ASP.NET Core SameSiteの設定により、CookieはQQブラウザで機能しない
1426 ワード
最近発表されたASPベースのNET Coreが実装した新しいログインページの後、ユーザーからログインのフィードバックが相次いだ場合、Antiforgery Tokenは常に検証に失敗します.
ログに記録されている対応エラーは
今日、QQブラウザでカーネルモードを「
その後、園で博文QQブラウザの互換モードの下でCookieの失効によるASPを見つけた.NET Core Cookie認証が失効して、Cookieであることを知った.SameSiteが起こした災い.
antiforgery cookieのsamesite値を表示するとstrict、元asp.NetcoreのデフォルトはSameSiteModeです.Strict、SameSiteModeに変更.None問題は解決した.
ログに記録されている対応エラーは
Antiforgery token validation failed. The required antiforgery cookie "xxx.Antiforgery" is not present.
今日、QQブラウザでカーネルモードを「
IE ” , cookie , antiforgery cookie , cookie , ajax post , antiforgey cookie , , antiforgery cookie 。
」に設定しました.services.AddAntiforgery(options =>
{
options.Cookie.Name = ".xxx.Antiforgery";
});
その後、園で博文QQブラウザの互換モードの下でCookieの失効によるASPを見つけた.NET Core Cookie認証が失効して、Cookieであることを知った.SameSiteが起こした災い.
antiforgery cookieのsamesite値を表示するとstrict、元asp.NetcoreのデフォルトはSameSiteModeです.Strict、SameSiteModeに変更.None問題は解決した.
services.AddAntiforgery(options =>
{
options.Cookie.Name = ".XXX.Antiforgery";
options.Cookie.SameSite = SameSiteMode.None;
});