IdentityServer4 突然登录就不香了?SameSite?

链接地址:
https://web.dev/samesite-cookies-explained/

https://blog.chromium.org/2019/10/developers-get-ready-for-new.html

https://docs.microsoft.com/en-us/aspnet/core/security/samesite?view=aspnetcore-3.1

 

自己的一个使用了IdentityServer4 的单点登录demo项目,突然就登录不好使了,一直在登录页,调试了一下发现登录流程也走了,也登录成功了,就是跳转的时候又回到了登录页,百思不得其解。知道后来在控制台看到了这个;

 

 英文不好翻一下;

 

 简单说就是在新版浏览器中要使用cookie 跨站点  就要设置SameSite=None并且还要使用https. 

解决方案

 1.使用https;

2.将 UseIdentityServer 中间件放到 UseRouting 前面,并添加 CookiePolicy 指定 SameSiteMode.Lax 

app.UseIdentityServer();
            
//eShopDapr的解决方案,UseIdentityServer在Routing 之前
app.UseCookiePolicy(new CookiePolicyOptions { MinimumSameSitePolicy = SameSiteMode.Lax });
app.UseRouting();

 

posted @ 2020-08-13 14:30  diudiu1  阅读(450)  评论(0编辑  收藏  举报