Java 웹 애플리케이션이 있습니다. 내 애플리케이션에 SAML 싱글 사인온 (SSO) 로그인을 구현하고 싶습니다. 이 GitHub onelogin program을 요청하여 응답을 받으십시오. 그러나 제대로 작동하지 않았습니다. 거기에 하나의 계정을 만들었습니다. 하지만 엔터프라이즈 계정이 없습니다. 응용 프로그램을 실행하면 onelogin login 페이지로 이동합니다. 로그인을 시도했지만 응답에 anyuthing이 반환되지 않아 권한이 없음을 보여줍니다. 잘못된 자격 증명도 제공하면 SAML 응답을 제공하지 않습니다.SAML 어설 션 생성 및 응답 서명
그래서 어설 션을 만들고 서명하기로 결정했습니다.
- 먼저 모든 ID 제공 업체에 SAML 요청을 보내야합니까?
- IdP (Like this is fine?) 대신에 샘플 SAML 어설 션을 생성하는 방법
- 일단 SAML 응답을 받으면 애플리케이션에 서명하고 어떻게 처리합니까?
감사
UPDATE 1
<?xml version="1.0" encoding="UTF-8"?>
<samlp:Response xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"
ID="123" InResponseTo="abc" IssueInstant="2014-11-21T17:13:42.872Z"
Version="2.0">
<samlp:Status>
<samlp:StatusCode Value="urn:oasis:names:tc:SAML:2.0:status:Success"/>
</samlp:Status>
<saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" Version="2.0">
<saml:Subject>
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">
[email protected]
</saml:NameID>
</saml:Subject>
<saml:AuthnStatement AuthnInstant="2014-11-21T17:13:42.899Z">
<saml:AuthnContext>
<saml:AuthnContextClassRef>
urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
</saml:AuthnContextClassRef>
</saml:AuthnContext>
</saml:AuthnStatement>
</saml:Assertion>
</samlp:Response>
확인을 클릭합니다. 그래서 다른 예제처럼 SAML 어설 션으로 XML 문자열을 하드 코딩 할 수 있습니다. 서명 할 필요가 없다. 그렇다면 어떻게 확인할 수 있습니까? 키 저장소에 인증서를 저장하지 않았습니다. – iUser
XML 문자열이 무엇인지 모르겠습니다. 인증서를 사용하여 유효성을 검사합니다. 이 파일 또는 SAML 메타 데이터에서 얻을 수 있습니다 –
메타 데이터를 만들 위치는 어디입니까? – iUser