2 回答
TA贡献1847条经验 获得超11个赞
添加 cookie 时,您需要传入 AuthenticationScheme。
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(
CookieAuthenticationDefaults.AuthenticationScheme,
options => {
options.LoginPath = "/Login";
}
);
TA贡献2016条经验 获得超9个赞
我知道这是很久以前问过的,但我最近遇到了同样的问题。所以,在这里我分享我的发现。
app.UseHttpsRedirection();
app.UseStaticFiles();
var cookiePolicyOptions = new CookiePolicyOptions
{
MinimumSameSitePolicy = SameSiteMode.Strict,
HttpOnly = Microsoft.AspNetCore.CookiePolicy.HttpOnlyPolicy.Always,
Secure = CookieSecurePolicy.None,
};
app.UseCookiePolicy(cookiePolicyOptions);
app.UseRouting();
app.UseAuthorization();
app.UseAuthentication();
出于某种原因,当我在 startup.cs 中使用上述代码时,它总是重定向到/login
但是下面的代码工作正常。
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
var cookiePolicyOptions = new CookiePolicyOptions
{
MinimumSameSitePolicy = SameSiteMode.Strict,
HttpOnly = Microsoft.AspNetCore.CookiePolicy.HttpOnlyPolicy.Always,
Secure = CookieSecurePolicy.None,
};
app.UseCookiePolicy(cookiePolicyOptions);
app.UseAuthentication();
app.UseAuthorization();
似乎UseRouting()影响 cookie 身份验证的位置,对此的任何评论将不胜感激。
- 2 回答
- 0 关注
- 347 浏览
添加回答
举报