我正在将旧站点升级到 ASP.NET Core 2.1,但仍将 .NET Framework 4.7.2 作为目标框架。
我们正在尝试使用 WSFederation 服务来处理身份验证,如本 Microsoft文档中所述。一个单独的站点处理实际的登录,然后重定向回我们位于 /Federation 端点的站点。
我们的 Startup.cs 类:
public void ConfigureServices(IServiceCollection services)
{
services.AddAuthentication(authOptions =>
{
authOptions.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
authOptions.DefaultSignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
authOptions.DefaultChallengeScheme = WsFederationDefaults.AuthenticationScheme;
})
.AddWsFederation(wsOptions =>
{
wsOptions.Wtrealm = Configuration.GetValue<string>("WSFed:Realm");
wsOptions.MetadataAddress = Configuration.GetValue<string>("WSFed:Metadata");
wsOptions.CallbackPath = "/Federation";
})
.AddCookie(cookieOptions =>
{
cookieOptions.Cookie.SameSite = SameSiteMode.None;
});
//Fixes correlation error
services.Configure<CookiePolicyOptions>(options =>
{
options.MinimumSameSitePolicy = SameSiteMode.None;
});
services.AddMvc()
.SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
services.AddHttpsRedirection(options =>
{
options.HttpsPort = 443;
});
}
public void Configure(IApplicationBuilder …Run Code Online (Sandbox Code Playgroud)