【问题标题】:How to verify a rollover certificate?如何验证翻转证书?
【发布时间】:2016-09-22 06:24:11
【问题描述】:

我想验证来自 SAML 断言(由 AZURE AD 颁发)的证书

他们可以随时更新公钥。我假设这意味着我无法在受信任的根存储中手动管理它们。

如果证书不在受信任的根存储中,我正在使用 X509Certificate2.Verify() 返回 False。我应该使用X509Certificate2.Build() 并将其设置为是否受信任?

【问题讨论】:

    标签: c# azure certificate saml-2.0 rollover


    【解决方案1】:

    SAML2 使用证书作为一种以标准文件格式表示加密/签名密钥的便捷方式。证书的内容不相关,因为证书应该在相关各方之间直接交换。所以不需要验证证书的有效性,在许多部署中它甚至不会验证。

    对于定期进行密钥翻转的 Idp,您应该加载并信任 Idp 的元数据,而不是直接配置证书。

    如果您自己实现所有这些,我建议您花一些时间寻找现有的实现。制作一个支持加载元数据的完整 SAML2 实现并非易事,而且需要大量时间。

    【讨论】:

    • 当你说:'不需要验证证书的有效性'时,我仍然需要验证证书是否与 Idp 元数据中的证书匹配,对吧?
    • 是的,您需要检查它是否与元数据匹配。
    猜你喜欢
    • 1970-01-01
    • 2016-09-07
    • 2015-08-17
    • 2011-04-06
    • 2022-01-09
    • 1970-01-01
    • 2021-07-22
    • 2015-12-18
    相关资源
    最近更新 更多