如何修复错误 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。