没有私钥的 ComponentSpace SAML SSO 和解密断言
ComponentSpace SAML SSO and Decrypt Assertion without Private Key
我们正在使用低级别的 ComponentSpace SAML 2.0 实现,当尝试读取加密的断言时,在传递 x509 证书文件时,ComponentSpace 只能在文件中存在私钥时解密。
在很多情况下,SAML SSO Idp 不在证书文件中包含私钥,还有其他方法可以解密断言吗?
XmlElement decryptedElement = encryptedAssertion.DecryptToXml(x509Certificate);
身份提供者使用服务提供者的 public 密钥加密 SAML 断言。服务提供商使用服务提供商的私钥对加密的断言进行解密。 SAML 断言永远不应使用身份提供者的 public 密钥进行加密。您永远不需要第三方的私钥,也不应该将您的私钥提供给第三方。您只能交换 public 个密钥。
您应该向身份提供商提供您的 public 密钥(例如 sp.cer 文件)。
您应该使用私钥解密 SAML 断言(例如 sp.pfx)。
我们正在使用低级别的 ComponentSpace SAML 2.0 实现,当尝试读取加密的断言时,在传递 x509 证书文件时,ComponentSpace 只能在文件中存在私钥时解密。
在很多情况下,SAML SSO Idp 不在证书文件中包含私钥,还有其他方法可以解密断言吗?
XmlElement decryptedElement = encryptedAssertion.DecryptToXml(x509Certificate);
身份提供者使用服务提供者的 public 密钥加密 SAML 断言。服务提供商使用服务提供商的私钥对加密的断言进行解密。 SAML 断言永远不应使用身份提供者的 public 密钥进行加密。您永远不需要第三方的私钥,也不应该将您的私钥提供给第三方。您只能交换 public 个密钥。
您应该向身份提供商提供您的 public 密钥(例如 sp.cer 文件)。
您应该使用私钥解密 SAML 断言(例如 sp.pfx)。