Single sign on 请解释SAML2签名和PK

Single sign on 请解释SAML2签名和PK,single-sign-on,saml-2.0,Single Sign On,Saml 2.0,我正在开发SAML2服务提供商能力(支持IdP发起的SSO) 我知道一般流程是: 1) 用户在IdP进行身份验证。 2) 用户通过HTTP POST发送到我的SAML端点(包含XML令牌)启动到我的SP。 3) 我的SP的断言消费者服务会吃掉该令牌,验证它并将该用户登录 我不明白的是证书/私钥部分。我了解IdP与SP共享一个证书,并且该证书用于在SAML令牌到达时验证该令牌。。。但是,我找不到这方面的任何细节(除了官方的SAML规范,我真的很难理解) 我的问题是: 1) 谁创建了证书?IdP还是

我正在开发SAML2服务提供商能力(支持IdP发起的SSO)

我知道一般流程是: 1) 用户在IdP进行身份验证。 2) 用户通过HTTP POST发送到我的SAML端点(包含XML令牌)启动到我的SP。 3) 我的SP的断言消费者服务会吃掉该令牌,验证它并将该用户登录

我不明白的是证书/私钥部分。我了解IdP与SP共享一个证书,并且该证书用于在SAML令牌到达时验证该令牌。。。但是,我找不到这方面的任何细节(除了官方的SAML规范,我真的很难理解)

我的问题是: 1) 谁创建了证书?IdP还是SP? 2) 谁创建私钥?IdP还是SP? 3) 密钥与证书的关系如何? 4) 如何共享密钥/证书? 5) 如何创建密钥/证书

所以,正如你所看到的,我只想要一个PK/证书来解释假人。就谁创造它们/它们是如何创造的/它们存储在哪里等而言


非常感谢,

IDP将使用私钥对正在生成并发送到SP的SAML令牌进行签名。SP将使用公钥证书验证SAML令牌中的签名

IDP将创建私钥对和保存在IDP服务器上的私钥,以便在签名期间使用。公钥将作为元数据的一部分提供给SP


我建议您通读PKI文章,以了解PKI设置的详细信息。私钥的存储非常关键,因为私钥用于保证令牌不会被篡改。

谢谢Avi,我假设既然我正在创建SP功能,那么我就不必担心这些密钥的创建了?我只需要能够存储与我有关系的每个IdP的公钥证书?是的,这是正确的。如何存储证书将取决于您使用的平台和框架。