问题标签 [single-logout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
401 浏览

keycloak - Keycloak 的 SAML 单次注销

我正在尝试在 keycloak 中为 SAML 实现单次注销,并且文档没有正确提及这一点并且令人困惑。我正在寻找有关如何实施它的确切步骤。到目前为止,我所做的是:

生成注销请求有效负载,对其进行base64编码,对其进行url编码并将其作为参数发送到注销url。假设领域名称是Abc

saml 有效载荷是

但是,在发送此消息时,我收到 400 错误消息“未知登录请求者”(即使我想注销)

这里的网站说请求是有效的。也许我错过了一些额外的参数或什么?我还需要一个确切的发送方式。我必须使用斯卡拉。提前致谢!

0 投票
0 回答
141 浏览

react-native - 如何从 React 本机应用程序退出 Identity Server 4?

我正在尝试使用 Expo React Native 实现登录/注销。我能够登录并获得身份服务器 4 的身份验证,该服务器在我的服务器上运行,但我仍然不确定如何从反应本机应用程序中实现注销。我知道为了注销,我必须从 react 本机应用程序和身份服务器注销。从 react native 中,我可以删除 access_token 并使用 LoginStatus=False 设置状态,但不知道如何调用或实现 Identity Server 4 的部分?

谢谢你。

0 投票
1 回答
552 浏览

asp.net-core-mvc - 身份服务器 4 使用 FrontChannelLogoutUri 从所有客户端注销不起作用

这里我想实现SSO功能。如果我从身份服务器注销,所有使用该用户 ID 连接到该服务器的客户端都应该被注销。但它对我有用。

我正在使用身份服务器版本 =“4.0.0”

我已经设置了 IDS 客户端、用于注销的 UI 模板、MVC 客户端,如下所示。但这并不是所有客户的退出。

在 MVC 客户端中,我创建了两个注销

0 投票
0 回答
354 浏览

angular - Angular angular-auth-oidc-client identity4 SLO SSO 从所有客户端注销不工作

我无法以角度实现所有客户端的单点注销。我使用的代码在下面。注销功能是从角度应用程序调用并从当前应用程序注销,但它不是从所有客户端注销(其他使用相同身份服务器的角度应用程序)

请帮助我实现所有客户的退出。提前致谢

客户端的IdentityServer4配置

角度 OIDC 配置

角度注销代码

0 投票
1 回答
213 浏览

asp.net-core - Identity4 反向通道注销 SSO/SLO 不适用于所有客户端

我已经实现了反向通道注销并且 URL 正在调用所有客户端,但它不是从所有客户端注销

设想

  1. 客户端-A 登录
  2. 客户端-B登录
  3. 单击 Client-A 的注销按钮,重定向到身份服务器注销页面
  4. 为客户端 B 调用反向通道注销 URL
  5. 为客户端 A 调用反向通道注销 URL
  6. 检查身份服务器 --> 用户已经注销
  7. 输入 Client-A 的 URL,重定向到 Identity Server 进行登录
  8. 输入Client-B的URL,我可以查看(假设已经重定向到身份服务器bcos logout的登录页面)

注销代码

BackChannel 注销代码

我想实现,如果从客户端注销它,它应该重定向到身份服务器进行登录

0 投票
1 回答
729 浏览

spring-security - 钥匙斗篷 | 使用 Spring Security 的 OIDC 反向通道(单)注销

我正在尝试使用 Keycloak 12 和 Spring Security 中引入的反向通道注销来实现单次注销。这个话题似乎真的很新,而且不是微不足道的,因为我在互联网上找不到任何例子。因此,我希望您的专业知识。以下初始情况:

1

我有一个带有领域和客户端的 Keycloak 服务器实例(协议:openid-connect | 访问类型:公共)。Keycloak 和我的 Spring 应用程序都在反向代理之后运行。我已经成功实现了一次登录。现在我想使用 Spring Security 实现单次注销。这意味着,如果用户在 App1 中按下注销,所有其他应用程序中的注销应该通过反向通道自动发生(应用程序的数量不受限制)。

您能否给我一些有关如何实现此配置的指导。在 Keycloak 客户端中应该输入什么作为“Backchannel Logout URL”?每个应用程序的反向通道注销 URL 都不同。理论上,每个应用程序在登录时都必须指定一个反向通道注销 url。如果我理解正确,那么设置“需要反向通道注销会话”用于此,对吗?

0 投票
0 回答
174 浏览

asp.net - 如何识别会话并清除 cookie 以完成 Idp 发起的 SLO 的应用程序 (sp) 注销

我们正在使用 SAML 2.0 在 Salesforce IDP 和 .net core 3.1 应用程序 (SP) 之间实施 SSO/SLO 流。SP/IdP 发起的 SSO 流运行良好,SP 发起的 SLO 流也是如此。问题:对于 IDP 发起的流程 - SP 正在从 IdP 接收包含用户 ID 和 sessionId 的 SAML 请求,但是,我不确定如何实现以下操作。任何帮助/线索将不胜感激。

  1. 从 IdP 收到用户 id(即 UserX)和会话 id 后,如何识别会话并删除 cookie 以注销 UserX
  2. 如果userX在浏览器上打开了多个标签,注销后如何为他刷新所有标签

以下是来自 IDP 的 SAML 注销请求:

浏览器:为每个用户登录创建 .AspNetCore.Cookies

.Net 应用程序代码:

此外,以下是用于在 SSO 期间配置用户登录的 .net 代码,以防需要了解如何设置用户登录:

0 投票
0 回答
66 浏览

single-sign-on - 从所有客户端注销身份服务器 4 不起作用

我正在使用身份服务器 Version="4.0.0" 我想在客户端注销时实现所有客户端的注销。我正在尝试 backoutchannel 注销

例如: - 我将以下应用程序 URL 连接到 IS。当客户端 MVC1 从 URL https://localhost:5002/ 注销时,其他客户端也应该注销。我浏览了他们说要添加 backoutchannelURL 的 IS 文档

  1. https://localhost:5002/(客户端:MVC1,BackChannelLogoutUri:https://localhost:5002/home/logout)
  2. https://localhost:5003/(客户端:MVC2,BackChannelLogoutUri:https://localhost:5003/home/logout)
  3. https://localhost:5004/(客户端:MVC3,BackChannelLogoutUri:https://localhost:5004/home/logout)

IS--> accountController

MVC 应用程序 --> 主页/注销

关于它为什么不起作用的任何想法?

0 投票
1 回答
59 浏览

wso2 - SSO 中的 WSO2 注销问题

我正在使用 WSO2 IS 为用 java 实现的服务提供者启用 SSO。我想执行注销并返回我的 SP 的主页,但是当我注销时出现以下错误:

POST 注销 URI 与注册的回调 URI 不匹配

任何关于如何制作正确的登出 URL 的建议。在调试 java 应用程序时,我发现使用的重定向 uri(callback uri) 是:http://server:8080/openid/callback 但注销后 uri 值是:http://server:8080

0 投票
1 回答
82 浏览

itfoxtec-identity-saml2 - 单次登出问题

我正在尝试在我的 ASP.Core 3.1.10 应用程序中使用重定向来实现单次注销。我使用了来自https://www.itfoxtec.com/identitysaml2的代码。注销 POST 请求结果为 303
(User.Identity.IsAuthenticated 变为 false),但下一个 GET 请求结果为 400,未发生重定向(未执行 LoggedOut、SingleLogout 方法)。你能帮忙解决这个问题吗?

这是一个失败的GET SAMLRequest

SAML2 配置

AuthController 登录:

断言消费者服务

注销

登出:

单次注销: