Implementieren von SAML mit Okta als IdP. Die Anmeldung funktioniert einwandfrei, wenn das Projekt auf meinem lokalen Computer und in unserer QA-Maschine ausgeführt wird. Das gleiche Projekt funktioniert nicht, wenn ich es in die Produktion verlagern. Ich gebe den DNS-Namen anstelle einer URL ein und die Produktionsinstanz ist HTTPS. Wenn ich es versuchte, zeigt es einen Fehler an, dass die Endpunkte nicht übereinstimmen. Ich habe den Inhalt der IdP-Metadaten in die Datei idp.xml
in meinem Projekt kopiert. Verwenden von Spring Security SAML. Ich folgte den Anweisungen in: http://developer.okta.com/code/java/spring_security_saml.htmlOkta SAML Login ist kein Erfolg
Was ist hier falsch? Fehle ich etwas?
AKTUALISIERT
Fehler: -
org.springframework.security.authentication.AuthenticationServiceException: Incoming SAML message is invalid
at org.springframework.security.saml.SAMLProcessingFilter.attemptAuthentication(SAMLProcessingFilter.java:100)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:195)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:166)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.saml.metadata.MetadataGeneratorFilter.doFilter(MetadataGeneratorFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
Caused by: org.opensaml.xml.security.SecurityException: SAML message intended destination endpoint did not match recipient endpoint
at org.opensaml.common.binding.decoding.BaseSAMLMessageDecoder.checkEndpointURI(BaseSAMLMessageDecoder.java:217)
at org.opensaml.saml2.binding.decoding.BaseSAML2MessageDecoder.decode(BaseSAML2MessageDecoder.java:72)
at org.springframework.security.saml.processor.SAMLProcessorImpl.retrieveMessage(SAMLProcessorImpl.java:105)
at org.springframework.security.saml.processor.SAMLProcessorImpl.retrieveMessage(SAMLProcessorImpl.java:172)
at org.springframework.security.saml.SAMLProcessingFilter.attemptAuthentication(SAMLProcessingFilter.java:80)
... 30 more
Hallo martin Dank Für die Antwort kann ich mich tatsächlich anmelden, wenn meine Anwendung http ist, aber für https zeigt es einen Fehler. Welche Änderung muss ich vornehmen, damit meine Bewerbung funktioniert? –
Stellen Sie sicher, dass HTTPS ordnungsgemäß konfiguriert ist und ordnungsgemäß signierte Zertifikate verwendet. Stellen Sie für Ihre Produktionsinstanz sicher, dass das HTTPS-Zertifikat von einer [Zertifizierungsstelle, der Java vertraut] signiert ist (http://superuser.com/questions/55470/which-trusted-root-certificates-are-included) -in-java), Spring Security SAML wird beim Abrufen der SAML-Metadaten von SAML SP möglicherweise in einen TLS-Fehler versetzt. –
@ JoëlFranusic Hallo Joel, wir verwenden Amazon Server, und es ist richtig konfiguriert, müssen wir bestimmte Änderungen in Okta und in meiner Anwendung für https ?? Hast du irgendwelche Hinweise? –