我们正在使用 Azure AD 开发基于 SAML 的 SSO。 我们完成了所有必需的设置,并且能够发出 SAMLRequest 并能够在回复 URL 上获取 SAMLResponse。但响应是 BASE64 编码和加密的。
我无法解码响应,因为它需要 idpPublicKey、spPublicKey 和 spPrivateKey。 有人可以帮助如何生成这些 key 并在 AZURE AD 中进行配置。
最佳答案
(1) Manage certificates for federated single sign-on in Azure Active Directory (微软官方网站)提供了如何生成Azure AD的idpPublicKey以及如何使用Azure AD配置SSO的说明。
(2) spPublicKey 和 spPrivateKey 应由您的 SAML SP 应用程序生成(而不是由 Azure AD IdP)生成,例如 Shibboleth SAML SP GitHub 存储库在“shibboleth-sp-testapp/shibboleth-sp/”下提供了 spPublicKey 和 spPrivateKey 以及 SAML SP 配置示例的示例。
另一个 StackOverflow 问题 Keytool - Generate Public key in X.509 format using existing private key提供如何使用 native OpenSSL 命令为 SAML SP 应用程序生成 spPublicKey 和 spPrivateKey 的说明。
关于具有 SAML 签名证书的 Azure AD SSO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58184029/