如何修复错误 ACS50008

更新时间:2015 年 6 月 19 日

适用于:Azure

本主题提供有关 ACS50008 错误的可能原因和解决方案的信息。 有关 ACS 错误代码的详细信息,请参阅 ACS 错误代码

ACS50008 通常显示为某个完整错误消息的一部分,例如下面的消息。 该消息可能显示在 Web 浏览器中(例如,在自定义 Web 应用程序单一登录方案中),也可能显示在 HTTP 跟踪中(例如,将单一登录与 SharePoint 结合使用时)。

An error occurred while processing your request. 
HTTP Error Code: 401 
Message: ACS20001: An error occurred while processing a WS-Federation sign-in response. 
Inner Message: ACS50008: SAML token is invalid. 
Trace ID: 903f515f-3196-40c9-a334-71277700aca6 
Timestamp: 2012-05-31 10:16:16Z

注意

以下信息可帮助你修复 ACS50008 错误。 有时 ACS50008 错误附带另一个 ACS 错误代码,指示错误的具体原因,例如 ACS50017,这表示证书无法链接到受信任的根目录。

当联合 STS 提供给 ACS 的 SAML 令牌不符合 ACS 令牌要求时,ACS 将返回 ACS50008。 可能的原因包括:

  • 联合 STS 的联合元数据中指定的签名证书与 SAML 令牌(断言)的签名密钥不匹配。 这通常在更新联合 STS 签名证书时发生,但提供给 ACS 的联合元数据与以前的签名证书匹配。 若要更新 ACS 门户中的联合元数据,请单击 标识提供者、单击WS-Federation标识提供者,并使用 WS 联合元数据 部分中的功能更新元数据。

  • SAML 令牌中的颁发者名称与联合元数据中的 EntityID 不匹配。 EntityID 与颁发者名称字段(包括元数据 URL 中的结束正斜杠)必须完全匹配。 若要更正该问题,请更新 STS 以使其生成更新的联合元数据,或更新 SAML 令牌。 手动更改联合元数据 XML 将不起作用。

  • 联合 STS 颁发的 SAML 令牌中的有效期设置为过去或未来的时间。 当运行联合 STS 的操作系统的系统时间不准确时,可能会发生此情况。 若要修复该问题,请在联合 STS 上增大令牌生存期设置,或者在操作系统上重置系统时间并确保它保持准确。 Pool.ntp.org 项目中包含了用于确保系统时间准确的方法。 有关详细信息,请参阅 http://www.pool.ntp.org/en/use.html

另请参阅

概念

ACS 错误代码
故障排除 ACS