저는 SAML SSO의 지원을 구현하여 내 애플리케이션을 Spring Security SAML Extension을 사용하는 서비스 공급자로 사용하도록했습니다. 내 SP를 다른 IDP와 통합 할 수있었습니다. 예를 들어 의 HostA, HostB 및 HostC은 모두 내 응용 프로그램의 인스턴스가 다릅니다. 각 호스트에 대해 SP 메타 데이터 파일을 지정하고 해당 호스트의 URL (예 : https : HostA.com/myapp/saml/sso)로 AssertionConsumerServiceURL을 설정했습니다. 각 메타 데이터 파일을 IDP에 추가하고 모두 테스트하여 제대로 작동합니다.고 가용성을 위해 HTTP 서버를 사용할 때의 SAML 동작
그러나 내 프로젝트는로드 균형 조정을 위해 IBM HTTP Server를 구성하여 고 가용성을 지원합니다. 따라서이 경우 HTTP 서버는 호스트 (A, B, C)을로드 균형 조정에 사용되는 호스트로 구성하고 사용자는 https : httpserver의 HTTP 서버 URL을 사용하여 내 응용 프로그램 에 액세스합니다. COM/MyApp를/나는 하나 개의 SP 메타 데이터 파일을 정의하고 AssertionConsumerServiceURL (https://httpserver.com/saml/sso)에 지정된 HTTP 서버의 URL을 가지고 내 HTTP 서버를 대상으로 주장을 받아 들일 수 내 구현을 변경 한 경우
, 가 될 것인가 이 시나리오의 결과 :
- 사용자가 HostA (배후)에 사용자를 파견 한 HTTPServer에 액세스합니다.
- HostA의 내 SP 응용 프로그램이 인증을 위해 IDP에 요청을 보냅니다.
- IDP는 내 httpserver에 대한 응답을 https://httpserver.com/saml/sso으로 다시 보냅니다.
는 HTTP 서버는 다음과 같이 그것을 가지고, 호스트 A로 리디렉션됩니다 : https://HostA.com/saml/sso
감사합니다.
블라디미르 감사합니다. 나는이 해결책을 시도하고 결과로 당신에게 돌아올 것입니다. –
HTTP 서버를 설치하고 위의 변경 사항을 적용하면 정상적으로 작동합니다. 고맙습니다. –