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

如何在Spring安全 SAML 示例中配置 IDP 元数据和 SP 元数据?

东方玉泽
2023-03-14

我想处理Spring Security SAML。为此,我开始探索Spring Security SAML。开始时,我在SSOCircle创建了一个帐户。然后我配置了IDP元数据和SP元数据的生成(4.2.2和4.2.3)。在entityId我设置:

 <bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
    <constructor-arg>
        <bean class="org.springframework.security.saml.metadata.MetadataGenerator">
            <property name="entityId" value="http://idp.ssocircle.com"/>
        </bean>
    </constructor-arg>
 </bean>

当我开始申请时,我有:

Error occurred:
Reason: Unable to do Single Sign On or Federation.

或者

Error occurred:
Reason: Unable to get AuthnRequest.

如何配置Spring Security SAML?

共有2个答案

柯学
2023-03-14

元数据生成器筛选器为应用程序(服务提供商)生成元数据。您提供的实体id(http://idp.ssocircle.com)已被SSO圈使用,您应该创建一个描述您的应用程序的唯一值,例如urn:test:helsinki:myapp

就像说明书上说的:

确保将 entityId 值替换为在 SSO 圆圈服务中唯一的字符串(例如,urn:test:您的姓名:您的城市)

蔺弘
2023-03-14

按照快速入门一章中的步骤操作。需要注意的一些差异:

>

  • 在 http://www.ssocircle.com/ 注册。您需要验证您的电子邮件地址。
  • 示例/src/主/webapp/WEB-INF/security上下文的元数据生成器筛选器部分.xml应如下所示(注意:符号元数据属性已注释掉):

    <bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
    <constructor-arg>
        <bean class="org.springframework.security.saml.metadata.MetadataGenerator">
          <property name="entityId" value="urn:test:YourName:YourCity"/>
      <!--<property name="signMetadata" value="false"/>-->
        </bean>
    </constructor-arg>
    
    1. 注销SSO Circle Service
    2. 转到http://localhost:8080/spring-security-saml2-样本
    3. 您应该被重定向到SSO Circle登录
    4. 使用您的SSO Circle凭据登录
    5. 您应该被重定向到本地服务提供商页面并进行身份验证

  •  类似资料:
    • 我使用SSOCIRCE实现了Spring SAML示例应用程序,效果很好。现在我一直在尝试为客户的ADF实现它。以下是我认为需要的配置,如果我错了,请纠正我: 将下面的第一个参数更改为federationMetadata。客户端提供的xml url 我还没有弄明白以下几点: 我只收到了adfs/的url/联邦元数据。xml,谁应该创建SP元数据 我是否应该创建SP元数据并提供给客户端,以便将其添加

    • 我使用的是Spring Security Core 5中的SAML特性集(不是Spring Security SAML extension,已经过时了)。到目前为止,我可以调出示例并登录IdP,没有任何问题,即使它在我的本地主机上。但是,我想提取我的SP元数据以提供给我的IdP。当我访问SP元数据URL(< code > http://localhost:8080/SAML 2/service-p

    • 我看过很多问题,包括 https://stackoverflow.com/a/25384924/1317559。我有IdP元数据和证书,但似乎无法获得Spring,所以看到它。 将证书添加到密钥库:keytool-importcert-alias-adfssigning-keystore-samlKeystore。jks-文件证书。crt 元数据中有多个证书(2个不同的证书)和一个Signatur

    • 在spring security saml中部署《快速入门指南》中的示例应用程序时,我不清楚站点元数据的导入错误: 元数据位于:是Internet2 shibboleth SP在组织中使用的签名元数据(许多SP数据,一些IdP),没有问题。 spring security saml的IdP元数据的预期格式是什么?

    • 我正在集成spring security saml扩展以支持我的web应用程序中的SSO,我的应用程序应允许不同的客户将其IDP元数据和证书添加到我的webapp(这是一个SP),以便我的webapp可以针对其IDP启动SSO。 现在我正在我的java配置中定义一个“元数据”bean,在其中我将idp元数据添加到CachingMetadataManager。但是这种情况只发生一次,我无法弄清楚如何

    • 我使用WSO2和SSOCircle以及Spring-SAML扩展。我们目前正在测试配置,并在我们的应用程序上下文中定义了2个IdP和2个SP。因此,目前,我们在spring xml配置中有2个静态定义的IdP,并且正在工作。出于测试目的,我们结合使用CachingMetadataManager和ResourceBackedMetadataProvider,因此IdP元数据构建在我们的WAR档案中。