【问题标题】:Keycloak "validate signature" fails with G Suite SAMLG Suite SAML 的 Keycloak“验证签名”失败
【发布时间】:2019-05-01 01:56:17
【问题描述】:

我使用Keycloak 5.0.0 作为身份代理。我已将它作为 SAML 应用程序连接到 G Suite。我已将其他 SAML 应用程序连接到 G Suite,所以我知道了练习,我将 G Suite 元数据 XML 导入到 SAML,所以我确信 X.509 密钥是正确的,但由于某种原因,如果我选择“验证签名” " 在 Keycloak 中,验证失败。日志说

ERROR [org.keycloak.broker.saml.SAMLEndpoint] validation failed
WARN  [org.keycloak.events] type=IDENTITY_PROVIDER_RESPONSE_ERROR, realmId=master, clientId=null, userId=null, ipAddress=10.10.2.1, error=invalid_signature

如果我在 G Suite 中关闭“签名响应”或在 Keycloak 中关闭“想要签名的断言”或“验证签名”,那么一切正常,但我希望这是因为 Keycloak 在这些情况下不会尝试验证签名(当“Want Assertions Signed”和“Validate Signature”开启但“Signed Response”关闭时,这当然是另一个错误。

我该如何解决这个问题?

【问题讨论】:

    标签: saml keycloak google-workspace


    【解决方案1】:

    原来我对“签名响应”的含义是错误的。根据 G Suite 关于设置特定支持的 SAML 应用程序的文档,但在“设置您自己的自定义 SAML 应用程序”文档中没有找到,“签名响应”并不意味着我认为的意思。

    Signed Response 复选框未选中时,仅对断言进行签名。当 Signed Response 复选框被选中时,整个响应都会被签名。

    我验证(通过更改 X.509 密钥并观察结果)未选中“签名响应”并打开“希望断言签名”和“验证签名”,Keycloak 正在验证断言是否已签名。所以这是正确、有效和安全的配置。

    【讨论】:

      猜你喜欢
      • 2013-10-28
      • 1970-01-01
      • 2016-12-06
      • 1970-01-01
      • 2015-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多