我使用的是身份服务器4,并且设置了cookiePolicy,例如:
在startup.cs中
var cookiePolicyOptions = new CookiePolicyOptions
{
MinimumSameSitePolicy = Microsoft.AspNetCore.Http.SameSiteMode.None,
HttpOnly = Microsoft.AspNetCore.CookiePolicy.HttpOnlyPolicy.None,
Secure = CookieSecurePolicy.Always,
};其次是:
app.UseCookiePolicy(cookiePolicyOptions);我也有反应的应用程序授权用户在ID4。我使用的是隐式流。当用户处于正常模式时,一切正常。
但是当用户使用私有模式时,窗口中的标志就不会出现。登录窗口
当在Google设置中,块30部分cookie被设置为允许在私有模式下,那么一切都是好的。
如果应用程序在不带https的localhost上运行,则在这两种模式下都可以。当应用程序在具有Https证书的服务器上时,问题就开始了。
我发现了很多信息,但仍然不知道是否可以在授权期间允许将cookie设置为私有模式?
(请告知我是否应提供更多资料;)
发布于 2022-01-27 08:31:54
我的问题是我设置了sameSite=none
这意味着我的IdentityServer与我的网络客户端有不同的域名。
我已更改为sameSite=Lax --这意味着Identity和WebClient具有相同的域名--但我也需要更改IIS绑定到相同域名的IIS绑定,用于端口: 8443站点和Web客户端站点上的标识服务器。(在此之前,两个域名是不同的)
在这种情况下,chrome并不阻止cookie作为30部分cookie,并且允许在浏览器中以匿名模式设置idsrv.external cookie。
https://stackoverflow.com/questions/70864246
复制相似问题