繁体   English   中英

SAML SSO 在 Websphere Liberty 中不起作用

[英]SAML SSO not working in Websphere Liberty

我第一次尝试在 Liberty 中实现 SSO。 我在 Liberty 中有一个应用程序,我希望成为服务提供者并使用 Azure 作为身份提供者。 目前我想让SP启动。

按照以下链接中的第一步:

https://www.ibm.com/docs/en/was-liberty/base?topic=liberty-configuring-saml-web-browser-sso-in

我已经把 samlWeb-2.0 和

进入 server.xml,我看到 SAML 启动。

然后我能够从 ibm/saml20/defaultSP/samlmetadata url 获取 SP 元数据。

我从 Azure 获得了 IDP 元数据并安装在 resources/security/idpMetadata.xml 中。

因此,当我访问我的应用程序时,它会转到上面的登录页面,但我收到消息:

AADSTS750054:SAMLRequest 或 SAMLResponse 必须作为查询字符串参数出现在 HTTP SAML 重定向绑定请求中。

这是真的——没有查询参数。 我在这里错过了什么? 为什么 Liberty 不尝试构建授权请求?

此外,Azure 要我安装证书(Base64 或 Raw),我假设它进入安全文件夹但我不应该引用它吗? 我注意到 iDp 元数据中有 X509Certificate 标签,所以我不确定 cer 文件是如何发挥作用的。

如果有人可以提供任何指导,我将不胜感激。

AADSTS750054 SAMLResponse 必须作为查询字符串参数出现在 HTTP SAML 重定向绑定请求中。

此错误是由于不正确的 idP 登录页面 URL 用于 sso_1.sp.login.error.page 属性。

您配置的SAML SSO是idP发起的SSO,WebSphere不支持SAML重定向绑定。 它只支持 SAML POST 绑定。 本文档包含有关该错误的更多信息: https://www.ibm.com/support/pages/node/277989

搜索 AADSTS750054

如果您将 sso_1.sp.login.error.page 指向 azure 中定义的登录页面,则 url 需要发送 SAMLRequest。

尝试将 sso_1.sp.login.error.page 更改为 Azure 控制台“Azure > 属性 > 访问 URL”中的值,然后进行测试。

LIberty 支持 HTTP POST 绑定。 看起来您的 Azure 配置为支持 HTTP 重定向绑定。 您可以修改您的 Azure 设置以启用 HTTP POST 绑定吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM