代码之家  ›  专栏  ›  技术社区  ›  Cody Crumrine

什么导致SAML响应中的响应者状态

  •  3
  • Cody Crumrine  · 技术社区  · 7 年前

    我花了很长时间使用我们的平台与客户建立SAML集成。我们正在使用 OneLogin's php sdk

    似乎无论我们做什么,我们从他们那里收到的AuthN响应都具有以下状态: urn:oasis:names:tc:SAML:2.0:status:Responder

    当我读到它的时候 here

    和我一起工作的人是 当然 这是一个配置不匹配的问题。要么他们没有提供正确的索赔,要么没有签署我们要求他们签署的部分,等等。

    我们的 如果他们签得不对的话。但我不希望从他们那里得到“响应者”的身份。

    2 回复  |  直到 7 年前
        1
  •  2
  •   Stefan Rasmusson    7 年前

    是的,你是对的。这两个错误在信息到达您身边之前不会被注意到。这是另外一件事,看他们身边的原木应该不是那么不可能。

        2
  •  2
  •   b.s    4 年前

    通常,在大多数情况下,问题是由于签名算法不匹配引起的。在我们的例子中,我们使用Spring SAML,因为Spring SAML默认使用SHA-1,IDP使用不同的签名算法(SHA-256)。因此,我们也收到了同样的回应 urn:oasis:names:tc:SAML:2.0:status:Responder, status message is null 由于算法不匹配,您用于与IDP集成的其他库也可能出现同样的情况。

    Caused by: org.opensaml.common.SAMLException: Response has invalid status code urn:oasis:names:tc:SAML:2.0:status:Responder, status message is null
    org.springframework.security.saml.websso.WebSSOProfileConsumerImpl.processAuthenticationResponse(WebSSOProfileConsumerImpl.java:113)
    at org.springframework.security.saml.SAMLAuthenticationProvider.authenticate(SAMLAuthenticationProvider.java:82)