java - 如何在 Spring Security SAML 示例中配置 IDP 元数据和 SP 元数据?

标签 java spring spring-security spring-saml opensaml

我想处理 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?

最佳答案

按照 QuickStart 中的步骤进行操作章节。需要注意的一些差异:

  1. 注册 http://www.ssocircle.com/ .您需要验证您的电子邮件地址。
  2. sample/src/main/webapp/WEB-INF/securityContext.xml 的 metadataGeneratorFilter 部分应该如下所示(注意: signMetadata 属性被注释掉):

    <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>
    

  3. 在本地构建并启动网络服务器。然后在 http://localhost:8080/spring-security-saml2-sample/saml/metadata 下载元数据.将内容复制到剪贴板。
  4. https://idp.ssocircle.com/sso/hos/ManageSPMetadata.jsp 更新您的新个人资料的元数据.
  5. 将服务的 FQDN 输入为“urn:test:YourName:YourCity”。您需要为您的姓名和您的城市输入唯一的值。粘贴上面的元数据。
  6. 测试:
    1. 注销 SSO Circle 服务。
    2. 转到 http://localhost:8080/spring-security-saml2-sample
    3. 您应该被重定向到 SSO Circle 登录。
    4. 使用您的 SSO Circle 凭据登录。
    5. 您应该被重定向到您的本地服务提供商页面并通过身份验证。

关于java - 如何在 Spring Security SAML 示例中配置 IDP 元数据和 SP 元数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28413680/

相关文章:

spring - 配置服务器配置无效

java - 在一种方法上结合@Secured 和@PreAuthorize 注释

spring - 如何在spring应用程序中用户授权后添加自定义过滤器

java - 启用 Spring Security 4 的 Spring MVC

java - https到http重写、https检测、java spring mvc

java - FileWriter 仅写入第一行(启用追加模式,Java)

java - 对于在管理员端口上运行的另一台服务器,NetBeans GlassFish Server 4.0 失败

java - 如何强制类的用户在 Android 中的 UI 线程之外使用它?

java - 从 Hibernate L2C 中缓存的实体派生的缓存对象

java - 如何注册 SQL 函数,以便您可以使用 JPA 和 Hibernate 在 JPQL 或 HQL 查询中调用它们