Sto tentando di integrare spring-security-saml con un'applicazione esistente per consentire a tale applicazione di fungere da provider di servizi.Inaspettato stack trace forma Spring-Security-SAML durante la generazione di metadati SP?
Sfortunatamente, non riesco a far funzionare il filtro dei metadati. La webapp si avvia senza problemi, ma quando premo $ contextPath/saml/metadata, ricevo la seguente traccia di stack nei miei log.
2014-10-24 13:52:38,779 54025 [[email protected]] WARN org.mortbay.log - /sf/saml/metadata/
org.opensaml.saml2.metadata.provider.MetadataProviderException: No hosted service provider is configured and no alias was selected
at org.springframework.security.saml.context.SAMLContextProviderImpl.populateLocalEntity(SAMLContextProviderImpl.java:311) ~[spring-security-saml2-core
-1.0.0.RELEASE.jar:1.0.0.RELEASE]
at org.springframework.security.saml.context.SAMLContextProviderImpl.populateLocalContext(SAMLContextProviderImpl.java:216) ~[spring-security-saml2-cor
e-1.0.0.RELEASE.jar:1.0.0.RELEASE]
at org.springframework.security.saml.context.SAMLContextProviderImpl.getLocalEntity(SAMLContextProviderImpl.java:107) ~[spring-security-saml2-core-1.0.
0.RELEASE.jar:1.0.0.RELEASE]
at org.springframework.security.saml.metadata.MetadataDisplayFilter.processMetadataDisplay(MetadataDisplayFilter.java:114) ~[spring-security-saml2-core-1.0.0.RELEASE.jar:1.0.0.RELEASE]
at org.springframework.security.saml.metadata.MetadataDisplayFilter.doFilter(MetadataDisplayFilter.java:88) ~[spring-security-saml2-core-1.0.0.RELEASE.jar:1.0.0.RELEASE]
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE]
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166) ~[spring-security-web-3.2.3.RELEASE.jar:3.2.3.RELEASE]
La mia configurazione dei metadati è riportato qui di seguito:
<bean id="metadataGeneratorFilter" class="org.springframework.security.saml.metadata.MetadataGeneratorFilter">
<constructor-arg ref="metadataGenerator"/>
</bean>
<bean id="metadataGenerator" class="org.springframework.security.saml.metadata.MetadataGenerator">
<!--<property name="entityBaseURL" value="${env.shibboleth.entityBaseUrl"/>-->
<property name="bindingsSSO">
<list>
<value>redirect</value>
<value>artifact</value>
</list>
</property>
<property name="entityId" value="${env.shibboleth.entityId}"/>
<prop
</bean>
Attualmente stiamo utilizzando: versione
- primavera: 4.0.4.RELEASE
- versione di sicurezza a molla: 3.2.3 .RELEASE
- spring-security-saml2 versione: 1.0.0.RELEASE
A questo punto, sono in gran parte in perdita, come noi non stiamo cercando di fare una configurazione multi-tennancy, che è l'unico luogo che alias è menzionato a lungo, e da quello che posso vedi, metadataGenerator definisce un fornitore di servizi?
Ciao Vladimir, capisci perché l'equivalente JavaConfig al tuo xml sopra non genererebbe i metadati? 'http.addFilterBefore (metadataGeneratorFilter(), ChannelProcessingFilter.class) .addFilterAfter (samlFilter(), BasicAuthenticationFilter.class);' Grazie, migliori riguardi – nuvio
SAMLContextProviderImpl: 244 riceverà un null EntityID come descritto in questa domanda. – nuvio