我正在尝试配置一个应用程序来利用.NET核心的联合登录。我看到我的客户机应用程序正在向联邦提供程序发送wsignin1.0和wsignout1.0消息。但是,当我尝试向客户端应用程序发送wsignoutleanup1.0时,什么也没有发生。联邦客户端如何接收wsignoutcleanup消息以清除其会话状态?
下面是我的客户端的wsfederation配置:
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
services.AddAuthentication(sharedOptions =>
{
sharedOptions.DefaultChallengeScheme = WsFederationDefaults.AuthenticationScheme;
sharedOptions.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
}
).AddCookie(options =>
{
options.Cookie.Name = "TestStsAuth1";
}).AddWsFederation(options =>
{
WsFederationConfiguration configuration = new WsFederationConfiguration();
configuration.Issuer = "http://localhost/STSSpike2/V1";
configuration.TokenEndpoint = "http://localhost/STSSpike/V1";
options.Configuration = configuration;
options.Wtrealm = "http://localhost/STSAwareApp2/Test";
options.SecurityTokenHandlers.Add(new FakeTokenValidator());
options.SkipUnrecognizedRequests = true;
options.RemoteSignOutPath = "/Logout";
});
services.AddLogging(
builder =>
{
builder.AddFilter("Microsoft", LogLevel.Trace)
.AddFilter("System", LogLevel.Trace)
.AddConsole();
});
}我尝试使用wa=wsignoutcleanup1.0向/Logout发送GET请求,但我似乎没有看到会话的Cookie被清理,也没有看到WsFederataion.OnRemoteSignOut事件被触发。对我错过的东西有什么建议吗?
发布于 2020-04-30 01:35:01
推荐的结束语。正在调用远程注销事件。最终用户错误
https://stackoverflow.com/questions/61491194
复制相似问题