Estoy usando el servidor de identidad 4 y configuré cookiePolicy como:
en inicio.cs
var cookiePolicyOptions = new CookiePolicyOptions { MinimumSameSitePolicy = Microsoft.AspNetCore.Http.SameSiteMode.None, HttpOnly = Microsoft.AspNetCore.CookiePolicy.HttpOnlyPolicy.None, Secure = CookieSecurePolicy.Always, };y después:
app.UseCookiePolicy(cookiePolicyOptions);También he reaccionado a la aplicación para autorizar al usuario en ID4. Estoy usando flujo implícito. Cuando el usuario está en modo normal, todo está bien.
Pero cuando el usuario está usando el modo privado, la ventana de inicio de sesión no aparece. iniciar sesión en la ventana
Cuando está en la configuración de Google Chrome, Bloquear cookies de treinta partes está configurado en Permitir en modo privado, entonces todo está bien.
En caso de que la aplicación se ejecute en localhost sin https, está bien en ambos modos. El problema comienza cuando la aplicación está en el servidor con certificado Https.
Encontré mucha información pero aún no sé si puedo hacer algo para permitir configurar cookies en modo privado durante la autorización.
Avíseme si debo proporcionar más información;)
Mi problema fue que configuré sameSite=none
Significa que mi IdentityServer tiene un nombre de dominio diferente al de mi cliente web.
Cambié a sameSite=Lax , lo que significa que Identity y WebClient tienen el mismo nombre de dominio , pero también necesitaba cambiar mi enlace IIS al mismo nombre de dominio para Identity Server en el puerto: 8443 Site y Web client site. (antes de eso, dos nombres de dominio eran diferentes)
En este caso, Chrome no bloquea las cookies como una cookie de treinta partes y también permite configurar la cookie idsrv.external en el navegador en modo de incógnito.