我在我的Mac上安装了Shibboleth SP。 我尝试与测试shib建立连接。 但是,登录后我收到此错误。

 Error Message: No peer endpoint available to which to send SAML response 

这是我的Shibboleth2.xml

<Sessions lifetime="28800" timeout="3600" relayState="ss:mem"
          checkAddress="false" handlerSSL="false" cookieProps="http">


    <SSO entityID="https://idp.testshib.org/idp/shibboleth"
         discoveryProtocol="SAMLDS" forceAuthn="true">
      SAML2 SAML1
    </SSO>


    <MetadataProvider type="XML" uri="http://www.testshib.org/metadata/testshib-providers.xml"
          backingFilePath="testshib-two-idp-metadata.xml" reloadInterval="180000">
    </MetadataProvider>

这是我的元数据

 <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://localhost/Shibboleth.sso/SAML2/POST" index="1"/>
    <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST-SimpleSign" Location="https://localhost/Shibboleth.sso/SAML2/POST-SimpleSign" index="2"/>
    <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:PAOS" Location="https://localhost/Shibboleth.sso/SAML2/ECP" index="3"/>
    <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:1.0:profiles:browser-post" Location="https://localhost/Shibboleth.sso/SAML/POST" index="4"/>

为什么我收到此错误?

#1楼 票数:3

此消息表示Testshib Identity Provider的配置与您尝试登录的Shibboleth Service Provider之间不匹配。 我怀疑在元数据提供的断言使用者服务URL中使用名称“localhost”会导致问题。 IDP正在尝试将SAML响应发送到https://localhost/Shibboleth.sso/SAML2/POST ,但当然没有Assertion Consumer Service,因为“localhost”在这种情况下是IDP本身。

因此,我首先从Testshib中删除所有内容,更改SP的entityID以使其更加独特(使用您的IP地址而不是localhost),并将SP的更新元数据重新添加到TestShib。

#2楼 票数:3

尝试请求,然后在https://idp.testshib.org/cgi-bin/idplog.cgi?lines=300上测试Testshib的idp日志。 对我来说,有一个这样的错误信息:

05:15:03.350 - WARN [org.opensaml.saml2.binding.AuthnResponseEndpointSelector:206] -
Relying party 'my.entity.id' requested the response to be returned to endpoint with ACS
URL 'https://wrong-host/Shibboleth.sso/SAML2/POST'  and binding 'urn:oasis:names:tc:
SAML:2.0:bindings:HTTP-POST' however no endpoint, with that URL and using a supported
binding,  can be found in the relying party's metadata 

但我的元数据说

<md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" 
Location="https://right-host/Shibboleth.sso/SAML2/POST" index="1"/>

如你所见,shibd要求被重定向到错误的地方。 问题是shibd使用Apache的主机名。 (我假设您正在使用Apache。如果没有,则设置可能类似。)

解决方案是转到/etc/apache2/sites-enabled/default-ssl.conf并将ServerName设置为与您的元数据匹配的正确host:port 然后,打开/etc/apache2/apache2.conf并确保UseCanonicalNameOn

这在文档中有详细说明,我建议仔细阅读。

  ask by snnlaynnkrdsm translate from so

未解决问题?本站智能推荐:

1回复

在处理了从会话参与者收到的LogOutRequest之后,SAML权威机构将LogoutResponse发送回哪个端点?

在处理了从会话参与者收到的LogOutRequest之后,SAML会话权限将LogoutResponse发送回哪个端点 ?
1回复

如何配置Shibboleth2通过标头将SAML响应发送到应用

我有一个应用程序,以SSO模式使用Shibboleth 2作为身份提供者。 我正在尝试配置Shibboleth 2(通过shibboleth-config.yaml )以在发出登录请求时以标头格式以及其他用户数据传递整个SAML响应。 为了配置响应头,我使用了如下的XML配置: 是否可
1回复

Shibboleth属性查询SAML错误:入站消息发布者未通过身份验证

idp-process.log 错误[org.opensaml.ws.security.provider.MandatoryAuthenticatedMessageRule:37]-未验证入站消息发布者。 shibd.log 错误OpenSAML.SOAPClient [109]:S
1回复

验证SAML响应的签名

我正在尝试按照以下规范验证SAML响应的签名: https : //www.w3.org/TR/xmldsig-core/#sec-PKCS1 这是我的工作流程:我收到了SAML响应。 我摆脱了签名信封,我将其标准化,检查摘要然后检查签名。 我能够成功计算转换后的SAML响应的SHA1摘
1回复

如何从SAML响应中识别用户?

我已经实现了Single Sign On来访问我的Sp应用程序。它使用shibboleth服务器作为Identity Provider。在idp系统中登录后,我收到了来自idp的Saml响应,其中包含Saml Assertion,但我现在不知道如何在我的应用 saml断言包含以下数据: *
1回复

Shibboleth不会在SAML响应中附加任何nameid

我们正在尝试使用Shibboleth Identity Provider 3和1服务进行一次设置。 我们已经将Shibboleth IDP3配置为使用我们正在运行的OpenLDAP服务。 由于身份验证成功,因此可以正常工作。 (请参见带有绿色下划线的零件图像)。 这是我们在LDAP中创
2回复

Shibboleth服务提供商用于SAML身份验证

嗨,我们正在使用.net Framework 4.0,IIS 7在ASP.Net中构建应用程序。我们正在尝试使用SAML(2.0)身份验证。 我们有一个身份提供者,其登录凭据将由我们的应用程序使用。 使用的服务提供商是SHIBBOLETH(2x)。 如果有人使用shibboleth,可以让
1回复

是否可以在React应用程序上处理SAML响应?

我必须在它的后端在python中的ReactJs应用程序中实现单点登录吗? 使用pingFederation-检查用户身份验证。 然后使用SAML响应重定向到“ React应用程序”登录页面。 通过点击登录页面上的POST请求请在我的应用程序登录页面上帮助我处理此SAML响应。 我在这里堆叠以处