首页 > 解决方案 > ComponentSpace.SAML 未能验证 XML 签名

问题描述

我正在使用以下代码/api 来验证使用来自 ComponentSpace.SAML.dll 的 SAML 令牌

AssertionSignature.Verify(token, cert).

同样在 environment1 上运行良好,但在 environment2 上却出现“无法验证 XML 签名”错误。

我检查了两个环境的以下几点,并且都是相同的。

  1. 操作系统 = Windows 2008 服务器
  2. .Net 框架 = 4
  3. 所有 Windows 更新 = 最新
  4. 用于验证 SAML 令牌的证书 - 有效、存在且未过期。

请建议如何解决此错误。

标签: asp.net.net-4.0single-sign-onsaml

解决方案


这可能是支持 SHA-256 XML 签名的问题。SHA-256 支持包含在 Windows 2008 R2 中,但我不确定 Windows 2008 是否支持。

https://docs.microsoft.com/en-us/security-updates/securityadvisories/2014/2949927

我的建议是迁移到 Windows 2008 R2 或更高版本,并确保安装了所有服务包。


推荐阅读