前言
目前打算做一個新的項目,剛開始,也可以理解為重復造輪子吧,哈哈。
.Net Core3.1+EF Core+Vue+.....
由於之前一直做的企業應用,很多子系統除了權限管理外其實還需要工作流,所以計划是做一個簡單的BPM系統。
但是流程引擎這塊還沒確認怎么處理,拖拉拽設計表單和流程的確實有些困難,也許會考慮直接使用釘釘的接口,這樣不用自己實現了...
問題
新的項目計划用IdentityServer4
,剛創建完測試的時候,就是登錄不了了。之前IdentityServer4 的單點登錄demo項目https://www.cnblogs.com/jellydong/p/13295225.html
,登錄也不好使了,一直在登錄頁,調試了一下返現登錄流程也走了,也登錄成功了,就是跳轉的時候又回到了登錄頁。知道后來在控制台看到了這個;
解決
問題找到了解決也就簡單了,把Cookie策略設置了lax即可
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
// 配置cookie策略
services.Configure<CookiePolicyOptions>(options =>
{
//https://docs.microsoft.com/zh-cn/aspnet/core/security/samesite?view=aspnetcore-3.1&viewFallbackFrom=aspnetcore-3
options.MinimumSameSitePolicy = Microsoft.AspNetCore.Http.SameSiteMode.Lax;
});
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
....
app.UseCookiePolicy();
....
}
當然了,如果本身使用的https
就沒這個問題咯。
參考
https://blog.51cto.com/10325527/2519897
https://docs.microsoft.com/zh-cn/aspnet/core/security/samesite?view=aspnetcore-3.1