当前位置: 首页 > 知识库问答 >
问题:

SAML 单点登录在 Websphere 自由中不起作用

冯翔
2023-03-14

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

按照下面链接中的第一个步骤:

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

我已经把samlWeb-2.0和

进入服务器.xml我看到 SAML 启动。

然后,我能够从 IBM/saml20/默认 SP/samlmetadata 网址中获取 SP 元数据。

我从Azure获得了IDP元数据,并安装在资源/安全/idpMetadata.xml.

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

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

哪一个是正确的–没有查询参数。我错过了什么?为什么Liberty不尝试建立一个授权请求

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

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

共有2个答案

艾泉
2023-03-14

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

容柏
2023-03-14

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

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

您配置的SAML SSO是idP启动的SSO,WebSphere不支持SAML重定向绑定。它只支持SAML POST绑定。这个文档有更多关于错误的信息:https://www.ibm.com/support/pages/node/277989

搜索AADSTS750054

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

尝试将sso_1“更改为 Azure 控制台中的值”Azure”

 类似资料:
  • 我正在尝试通过SAML请求将SSO集成到我们的ASP. NET应用程序中。我正在使用KentorAuthService库来实现这一点。使用kentor库是否是从其他身份提供者(例如(一次登录、快速身份等)进行身份验证的解决方案,或者我应该专门基于身份提供者实施。

  • 我正在研究SSO的一些新用法。基本上,我正在尝试找到如何拦截SAML请求的方法,该请求通过某种IdP代理或第三方服务从服务提供商发送到身份提供商,该服务将保存SAML请求并为用户提供一些附加功能。所需的过程可能如下所示: 用户从SP调用SAML请求-例如单击登录按钮 用户被重定向到第3方服务,例如,小型调查(这是理论示例) 提交调查后,用户被重定向到IdP并应继续登录 我对SimpleSAMLph

  • 我正在尝试使用OpenProject OmniAuth SAML单点登录插件设置SSO(单点登录)与OpenProject的集成。我已经配置了相关的详细信息。生成元数据并向Shibboleth支持的IDP注册。该插件在openproject登录表单上显示了一个额外的登录按钮。单击它将正确重定向到IDP的登录页面。在提供凭据之后,它正确地重定向到我提到的AssertionConsumerServic

  • 我在magento 1.9中使用了fishpig扩展,我在magento中面临自动登录错误消息: WordPress自动登录失败:HTTP/1.1 200 OK服务器:NGINX/1.0.15日期:周二,2015年12月8日20:20:02 GMT内容-类型:text/html;Charset=UTF-8连接:keep-alive X-Power-by:php/5.4.25过期:Wed,1984年

  • 拉威尔6。PHP7.4。 我正在建立一个网站。因为Laravel提供了默认的身份验证登录和注册表单。我将登录表单放入导航中,而注册页面上的注册表单。现在我想让用户在注册页面上提供另一个登录表单。 我设计了另一个登录表单,在提交时,我将其引用到相同的登录路径,但它不起作用。错误是419页已过期。 我也读过关于MutiAuth的文章,但这是我将在我的管理面板上使用的东西。有什么解决办法吗? Regis

  • 我是WebSphere Liberty概要文件的新手。我正在编写17.0.0.4版本。我试图实现的是为应用程序设置自定义JAAS登录设置。该应用程序在WebSphere8.5上运行良好。 我已经查看了IBM知识中心的许多链接,但得到了JAAS自定义登录的结果,但不是两者一起。在WebSphere 8.5中,我们有层次结构来决定哪个身份验证机制去哪里,但是在Liberty中,如果我设置自定义JAAS