对于使用 OpenIdConnect 身份验证的 WebForms 客户端,LogoutUri 应该是什么?
What should the LogoutUri be for a WebForms client using OpenIdConnect authentication?
我有一个 IdentityServer4 提供程序,我正在尝试使用 OIDC 身份验证将 ASP.NET WebForms 客户端连接到它。一切都很好,除了我不知道 LogoutUri
应该是什么。我试过 /signout-oidc
或 /signout-callback-oidc
但似乎都不存在,它们都 return 404 错误(有趣的是 /signin-oidc
确实存在)。我应该添加一个 SignoutCleanup.aspx 逻辑并将该页面用作 LogoutUri
吗?
这是客户端和 OIDC 配置:
{
ClientId = "client.webforms",
ClientName = "WebForms Client",
AllowedGrantTypes = GrantTypes.Hybrid,
AllowAccessTokensViaBrowser = false,
RedirectUris = { "http://localhost:9869/signin-oidc" },
PostLogoutRedirectUris = { "http://localhost:9869/" },
LogoutUri = "http://localhost:9869/signout-callback-oidc",
AllowedScopes =
{
IdentityServerConstants.StandardScopes.OpenId,
"test_scope"
},
AllowOfflineAccess = false,
RequireConsent = false,
AlwaysIncludeUserClaimsInIdToken = true
});
...
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{
AuthenticationType = "oidc",
SignInAsAuthenticationType = "Cookies",
Authority = "http://localhost:3027/",
ClientId = "client.webforms",
RedirectUri = "http://localhost:9869/signin-oidc",
PostLogoutRedirectUri = "http://localhost:9869/",
ResponseType = "id_token code",
Scope = "openid test_scope",
UseTokenLifetime = false,
... (events)
Katana/WebForms 没有注销端点的内置实现。
在控制器上创建一个清理操作(例如删除 authN cookie)- 并将该地址用作注销 URI。
IdentityServer 会将 sid 声明的值传递给注销端点 - 您应该将其与登录时获得的 sid 声明进行比较,以避免注销垃圾邮件。
我有一个 IdentityServer4 提供程序,我正在尝试使用 OIDC 身份验证将 ASP.NET WebForms 客户端连接到它。一切都很好,除了我不知道 LogoutUri
应该是什么。我试过 /signout-oidc
或 /signout-callback-oidc
但似乎都不存在,它们都 return 404 错误(有趣的是 /signin-oidc
确实存在)。我应该添加一个 SignoutCleanup.aspx 逻辑并将该页面用作 LogoutUri
吗?
这是客户端和 OIDC 配置:
{
ClientId = "client.webforms",
ClientName = "WebForms Client",
AllowedGrantTypes = GrantTypes.Hybrid,
AllowAccessTokensViaBrowser = false,
RedirectUris = { "http://localhost:9869/signin-oidc" },
PostLogoutRedirectUris = { "http://localhost:9869/" },
LogoutUri = "http://localhost:9869/signout-callback-oidc",
AllowedScopes =
{
IdentityServerConstants.StandardScopes.OpenId,
"test_scope"
},
AllowOfflineAccess = false,
RequireConsent = false,
AlwaysIncludeUserClaimsInIdToken = true
});
...
app.UseOpenIdConnectAuthentication(new OpenIdConnectAuthenticationOptions
{
AuthenticationType = "oidc",
SignInAsAuthenticationType = "Cookies",
Authority = "http://localhost:3027/",
ClientId = "client.webforms",
RedirectUri = "http://localhost:9869/signin-oidc",
PostLogoutRedirectUri = "http://localhost:9869/",
ResponseType = "id_token code",
Scope = "openid test_scope",
UseTokenLifetime = false,
... (events)
Katana/WebForms 没有注销端点的内置实现。
在控制器上创建一个清理操作(例如删除 authN cookie)- 并将该地址用作注销 URI。
IdentityServer 会将 sid 声明的值传递给注销端点 - 您应该将其与登录时获得的 sid 声明进行比较,以避免注销垃圾邮件。