【问题标题】:IdP metadata format for spring-security-samlspring-security-saml 的 IdP 元数据格式
【发布时间】:2016-01-26 14:34:25
【问题描述】:

从 spring-security-saml 中的快速入门指南部署示例应用程序时,我有一个站点元数据的导入错误我不清楚:

- FrameworkServlet 'saml':初始化在 399 毫秒内完成 启动 Tomcat 服务器 服务器在 http://localhost:8080/spring-security-saml2-sample 运行 - 元数据提供程序“https://shibboleth.example.org/inner-metadata.xml”的下一个刷新周期将发生在“2015-10-27T08:47:06.933Z”(“2015-10-27T09:47:06.933” +01:00' 当地时间) - 元数据提供程序未能正确初始化,fail-fast=true,暂停 org.opensaml.saml2.metadata.provider.MetadataProviderException:java.lang.NullPointerException 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:267) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.doInitialization(AbstractReloadingMetadataProvider.java:236) 在 org.opensaml.saml2.metadata.provider.AbstractMetadataProvider.initialize(AbstractMetadataProvider.java:407) 在 org.springframework.security.saml.metadata.ExtendedMetadataDelegate.initialize(ExtendedMetadataDelegate.java:167) 在 org.springframework.security.saml.metadata.MetadataManager.initializeProvider(MetadataManager.java:412) 在 org.springframework.security.saml.metadata.MetadataManager.refreshMetadata(MetadataManager.java:238) 在 org.springframework.security.saml.metadata.CachingMetadataManager.refreshMetadata(CachingMetadataManager.java:86) 在 org.springframework.security.saml.metadata.MetadataManager$RefreshTask.run(MetadataManager.java:1040) 在 java.util.TimerThread.mainLoop(Timer.java:555) 在 java.util.TimerThread.run(Timer.java:505) 引起:java.lang.NullPointerException 在 org.opensaml.saml2.common.SAML2Helper.getEarliestExpiration(SAML2Helper.java:112) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.processCachedMetadata(AbstractReloadingMetadataProvider.java:328) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:258) ... 9 更多 - 元数据提供者 org.opensaml.saml2.metadata.provider.HTTPMetadataProvider@54b1cd 初始化失败,提供者将被忽略 org.opensaml.saml2.metadata.provider.MetadataProviderException:java.lang.NullPointerException 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:267) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.doInitialization(AbstractReloadingMetadataProvider.java:236) 在 org.opensaml.saml2.metadata.provider.AbstractMetadataProvider.initialize(AbstractMetadataProvider.java:407) 在 org.springframework.security.saml.metadata.ExtendedMetadataDelegate.initialize(ExtendedMetadataDelegate.java:167) 在 org.springframework.security.saml.metadata.MetadataManager.initializeProvider(MetadataManager.java:412) 在 org.springframework.security.saml.metadata.MetadataManager.refreshMetadata(MetadataManager.java:238) 在 org.springframework.security.saml.metadata.CachingMetadataManager.refreshMetadata(CachingMetadataManager.java:86) 在 org.springframework.security.saml.metadata.MetadataManager$RefreshTask.run(MetadataManager.java:1040) 在 java.util.TimerThread.mainLoop(Timer.java:555) 在 java.util.TimerThread.run(Timer.java:505) 引起:java.lang.NullPointerException 在 org.opensaml.saml2.common.SAML2Helper.getEarliestExpiration(SAML2Helper.java:112) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.processCachedMetadata(AbstractReloadingMetadataProvider.java:328) 在 org.opensaml.saml2.metadata.provider.AbstractReloadingMetadataProvider.refresh(AbstractReloadingMetadataProvider.java:258) ... 9 更多

https://shibboleth.example.org/inner-metadata.xml 处的元数据是 Internet2 shibboleth-sp 在组织中使用的签名元数据(大量 SP 数据,一些 IdP),没有问题。

spring-security-saml 的 IdP 元数据的预期格式是什么?

【问题讨论】:

    标签: spring-security spring-saml


    【解决方案1】:

    根据示例应用程序中提供的示例,IdP 元数据包含单个 IdP 的数据,与您的组织元数据相反,后者很可能包含您站点中所有 SAML 参与者的所有 SP 和 IdP 元数据。

    尝试提取单个 IdP 的元数据。

    【讨论】:

      猜你喜欢
      • 2015-03-27
      • 2015-07-11
      • 2015-04-09
      • 2014-10-28
      • 1970-01-01
      • 2014-12-25
      • 2014-05-04
      • 2014-10-02
      • 2017-04-13
      相关资源
      最近更新 更多