- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图理解 SAML 2 协议(protocol),但在这个过程中,我对签名和证书业务有点迷茫。
基本上,我不清楚每个证书何时使用。
服务提供商元数据和身份提供商元数据 - 我们是否需要生成证书/ key 作为 SP 和 IDP 元数据的一部分?如果是,将如何/何时使用这些证书?
HOK token 还需要证书 - 什么时候出现?委托(delegate)人的证书/公钥是否需要与 SP 的证书一起导出到 IDP?
当使用不记名 token 时(它们没有任何与委托(delegate)人关联的证书),SAML 响应/断言是否仍然已签名?在这种情况下,它与 SAML 响应中的 ds:keyInfo 不同吗?
非常感谢您的帮助!!
最佳答案
1.SP 和 IDP 元数据中的证书通常用于数字签名和数字加密两个目的。元数据上的属性“使用”造成了歧视。证书通常包含在元数据中,但它们也可以省略并带外提供(例如,如果支持,通过在 IDP 和 SP 中直接配置)。这些 key 标识SP和IDP机器,与用户无关。
当 SP 向 IDP 发送 SAML 消息时,可以使用 SP 的私钥(其公钥 + 证书包含在 SP 元数据中并可供 IDP 使用)对消息进行数字签名,IDP 能够使用 SP 的公钥。
当 SP 想要加密部分 SAML 数据(整个消息、断言、名称 ID、属性等)时,它使用 IDP 元数据中声明的公钥,然后 IDP 使用其私钥解密数据。
有时元数据可以包含多个签名或加密 key ,例如如果证书在到期前滚动。
2。承载机制用于确保允许呈现 SAML 消息的实体(例如 Web 浏览器)这样做。在 SAML WebSSO 中,AuthnResponse 消息由 IDP 发出,但由浏览器传递给 SP。 HoK SubjectConfiguration 告诉我们通过确保它可以证明拥有一个私钥来识别演示者,该私钥的公钥/证书包含在 SubjectConfirmation 元素中。这通常是通过使用 SSL/TLS 客户端身份验证来完成的(即,用户在浏览器中安装私钥,并在使用 SSL/TLS 打开 HTTPS 方案时使用它向 SAML 服务进行身份验证)。
所以这里我们处理的是直接发给用户的 key ,而不是发给 SP/IDP 服务的 key 。您是否需要将用户的证书导入 IDP 是特定于 IDP 实现的。
3。是的,消息仍将被签名(当配置为签名时)并且 SAML 响应中的 KeyInfo 在这两种情况下都是相同的。
干杯,弗拉基米尔谢弗
关于certificate - saml - 何时使用 HOK 证书与 IDP 和 SP 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20032870/
我正在尝试按照此处引用的所有步骤执行 Spring Security SAML 示例应用程序:http://docs.spring.io/autorepo/docs/spring-security-s
我的意思是,我可以在不将服务提供商注册到 IDp 的情况下向 IDp 发送 SAML 请求吗?我的雇主希望与服务提供商和身份提供商一起使用 JAVA 开发一个示例应用程序,因此服务提供商将向身份提供商
我们正在使用 React 构建 SPA。为了让用户登录,我们使用 Azure AD B2C 作为 Azure 租户中的一些用户。但我们希望扩大用户群并为另一个 Idp 管理的另一组用户提供访问权限。因
第 3 方 IdP(不是 Microsoft 产品)已存在并管理多个域中的数百或数千个用户。该 IdP 必须对这些用户保持权威。我不希望 Azure AD (AAD) 因获取所有这些用户的所有信息的副
我们在我的应用程序中构建 SSO 以使用 SAML 2.0 进行登录。在这里,我想构建 IDP 发起的用于注销的 SLO。 问题 1.我们需要在IDP中进行哪些配置来启动SLO? 如何使用 SAML
我正在研究 SSO 技术,尤其是 SAML 2.0,并且我看到了 IdP、IdP Lite、SP 和 SP Lite 的操作模式。我能找到的关于这些“精简”模式的唯一引用是在 SAML 2.0 spe
我想使用 Keycloak 设置 Google 联盟,但仅限于我公司的授权用户。 设置 Google 联盟允许任何 Google 帐户登录。 我查看了 Keycloak 上的身份验证流程,但一直找不到
谁能告诉我如何为 IDP 发起的 SSO 连接传递 RelayState。我们有 SSO 工作,但想要深层链接到服务提供商的应用程序中的页面。他们已经指示我们在 RelayState 上通过,但我不知
我正在使用 ITfoxtec Identity SAML2以 Keycloak 作为 IdP 的库。当请求 IdP 元数据信息时,ITfoxtec Identity SAML2 库似乎无法识别 标签,
我们计划构建自己的 SAML IDP。我有几个问题: 构建一个有意义吗? 如果是,方法是什么?我没有看到任何用于 SAML 的 Java 库。无法使用 spring-security-saml,因为它
具有“POST”绑定(bind)的 SAML 2.0:服务提供商是否可以通过任何方式要求 IdP 针对特定请求重新进行用户身份验证?我的意思是,第一次 Web 用户输入登录名/密码时,它会在浏览器内存
我在本地主机上安装了 Shibboleth 服务提供程序。我想连接到 shibboleth idp。 Error Message: No peer endpoint available to whic
我正在使用具有单点注销配置文件的 SAML2.0。当 SP 发起注销时,请求发起者 SP 会向 Ping(身份提供者)发送 LogoutRequest,Ping 向 SP 发送 LogoutRespo
我一直在尝试用java实现WEB SSO服务提供者。我正在使用 Shibboleth 身份提供商。一切工作正常,直到身份验证步骤,我成功地为用户创建 session /设置 cookie。但是,当我尝
我使用 WSO2 作为 IDP,我的 SP 只是一个使用 spring 框架部署在 tomcat 中的简单 Web 应用程序。 我想从 SP(网络应用程序)获取用户名密码,然后当我点击登录按钮时,我想
我正在尝试解密 IDP 在工件解析中发送的加密断言。但是我得到一个错误: 17:01:55.734 [http-8443-2] ERROR o.o.x.e.Decrypter - Error decr
我们有一个应用程序在云中运行良好,谷歌和 Github 作为 IDP。 尝试使用模拟器在本地工作时。调用 createSessionCookie失败:FirebaseAuthError: There
我正在使用 SP 端的 Kentor Authservices 和 IDP 端的 Shibboleth clone 解决与无限重定向相关的问题。我的问题是这可能是什么原因造成的,我如何拦截并记录 Ke
我有一个关于 SAML2 的基本问题。典型流程是用户从 protected SP 请求资源。 SP 检查用户是否有安全上下文(比如 cookie ?),如果没有找到安全上下文,它会构造 AuthReq
我已在 Azure AD 中创建了应用程序,按照以下步骤操作: 1 - 登录 Azure AD,单击“应用程序”选项卡,“添加”按钮。 2 - 选择“添加我的组织正在开发的应用程序”。 3 - 选择“
我是一名优秀的程序员,十分优秀!