SAML SP 元数据:自签名证书或 CA 证书,最佳实践是啥?

Posted

技术标签:

【中文标题】SAML SP 元数据:自签名证书或 CA 证书,最佳实践是啥?【英文标题】:SAML SP Metadata: Self-signed Certifcate or CA Certificate, what is the best practice?SAML SP 元数据:自签名证书或 CA 证书,最佳实践是什么? 【发布时间】:2016-10-04 01:25:19 【问题描述】:

我必须在项目中添加 SAML 实现。我决定使用 Spring SAML。 我能够生成服务提供商元数据文件,并且必须将此文件发送到 IDP(此 IDP 使用 ADFS),但我不知道是否应该为我们的 SP 元数据创建自动签名密钥或 CA 签名证书文件。 根据这个link,最好的做法是生成一个自签名证书(x509 证书)。但我也发现了一些建议使用 CA 签名证书的主题。

但我在规格上找不到任何东西。

最佳做法是什么? 如果我应该使用 CA 签名证书,我该如何获得它?

谢谢大家

【问题讨论】:

【参考方案1】:

SAML2 使用证书作为处理签名和加密密钥的便捷方式。 SAML2 规范甚至声明不能假定证书尚未过期或颁发给任何相关的主机名。

这就是规范所说的。但实际上一些 IDP 或 SP 运营商要求证书有效。

我建议您与 Idp 运营商交谈并询问他们是否有任何要求。如果他们不这样做,请使用自签名证书。

【讨论】:

非常感谢您的回答。如果我应该使用 CA 签名证书,我应该使用哪个提供商?

以上是关于SAML SP 元数据:自签名证书或 CA 证书,最佳实践是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Spring SAML:更新元数据提供程序不会更新使用的签名证书

SP 元数据:用于签名和加密的证书

SAML2 元数据 - 多重签名证书

Spring Security SAML IdP 元数据证书和签名

如何为 SAML SP 元数据使用 Tomcat SSL 证书

如何使用 SP 密钥库 spring saml 中的证书