스프링 기반 애플리케이션에 주석 구성을 사용하고 싶습니다. 또한 SSO 목적을 위해 SAML2.0 분해 및 생성이 필요합니다.
Spring 4.0 및 Spring Security 3.2.4에서만 지원되는 주석 구성
Spring Security SAML 1.0의 통합이 가능합니까?
업데이트 됨 : Vladimír Schäfer가 제공하는 샘플 프로젝트가 정말 도움이됩니다.
그러나 sso 로그인 후 페이지는 서비스 공급자 앱의 인증 실패 URL로 리디렉션되었습니다.
SAML 응답은 다음과 같습니다.
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
Destination="http://myIP:8080/websso/saml/SSO"
ID="s237fe42260c297d9dfd7845b3691ef76e0bc27c76"
InResponseTo="a14hc23eda9j396g2h5aff4076216g5"
IssueInstant="2014-08-28T07:36:07Z"
Version="2.0"
>
<saml:Issuer xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion">http://idp.ssocircle.com</saml:Issuer>
<samlp:Status xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol">
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"
xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
/>
</samlp:Status>
<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion"
ID="s2e84d407027285a27d32a70c93ebdc70298956c8d"
IssueInstant="2014-08-28T07:36:07Z"
Version="2.0"
>
<saml:Issuer>http://idp.ssocircle.com</saml:Issuer>
<saml:Subject>
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress"
NameQualifier="http://idp.ssocircle.com"
>nameID</saml:NameID>
<saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectConfirmationData InResponseTo="a14hc23eda9j396g2h5aff4076216g5"
NotOnOrAfter="2014-08-28T07:46:07Z"
Recipient="http://myIP:8080/websso/saml/SSO"
/>
</saml:SubjectConfirmation>
</saml:Subject>
<saml:Conditions NotBefore="2014-08-28T07:26:07Z"
NotOnOrAfter="2014-08-28T07:46:07Z"
>
<saml:AudienceRestriction>
<saml:Audience>entityID</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AuthnStatement AuthnInstant="2014-08-28T07:35:44Z"
SessionIndex="s274ab5c8a81ed49654745a6583214314f65138201"
>
<saml:AuthnContext>
<saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement>
</saml:Assertion>
</samlp:Response>
SP의 시간대가 IDP와 다르기 때문인 것 같습니다. 어떻게 건너 뛰나요?
Spring SAML은 Spring 4.0 및 Spring Security 3.2.4에서 잘 작동하는 것 같습니다. spring-boot-security-saml-sample 프로젝트를 참조로 사용할 수 있습니다 .
다음 버전의 Spring SAML에는 Java 구성에 대한 추가 지원이 포함될 가능성이 높지만 위의 예에서 보여 주듯이 프로젝트에서 모든 것이 그대로 작동하도록 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다