2013-12-11 1 views
5

사용자 등록 및 인증을 관리 할 수있는 매우 간단한 Java 웹 응용 프로그램이 있습니다. 이 응용 프로그램을 SAML ID 공급자로 사용하고 싶습니다. 그런 다음 사용자가 인증을 받아야 사용할 수있는 또 다른 간단한 웹 앱을 만들 예정입니다. 기본적으로 첫 번째 앱은 IdP이고 두 번째 앱은 서비스 제공 업체가되기를 원합니다. 워크 플로는 다음과 같아야합니다. 사용자가 app2로 이동합니다. App2는 사용자가 인증 된 app1로 사용자를 리디렉션합니다. 인증이 성공하면 app1은 사용자에게 app2로 리디렉션합니다. SAML에 비교적 익숙합니다. 무통으로 할 수있는 자습서가 있습니까?아이디 공급자로 작동하도록 Java 응용 프로그램을 구성하는 방법

답변

4

SAML ID 공급자를 사용할 준비가 된 Shibboleth을 살펴보십시오. 사실, 당신은 이미 당신이 신원 공급자가 당신에게 두 가지 옵션을 제공합니다 역할을 할 응용 프로그램을 가지고 :

  1. 구성 표어는 인증 소스로 당신에게 사용자 데이터 모델을 사용합니다 (이 수 있는지 확실하지 않습니다)
  2. Shibboleth를 구현하는 데 사용되는 OpenSAML-Java Java 라이브러리를 사용하십시오. 이는 SAML 2.0의 웹 SSO 프로파일을 중심으로 SAML 어설 션 처리 (생성, 유효성 검사, 교환) 만 제공합니다. App2 및 App1에서 직접 웹 요청 리디렉션 프로세스를 만들어야합니다.

SAML은 그다지 고통스럽지 않으며, OpenID 또는 OAuth와 같은 다른 더 간단한 표준의 예제처럼 작동하는 포괄적 인 표준입니다 (공통적 인 원칙이 있지만 훨씬 간단합니다).

1
: 그것의 거의 같은 이야기는 자바 RMI 대 CORBA와 함께보다 여기

SAML Web Browser SSO Profile을 사용했을 때의 어떤 기본적인 이해를 얻을 수있는 좋은 출발점이 될 것입니다

질문에 두 부분이 있습니다. STS를 작성하는 것은 적지 않은 문제가

  • 자바 SAML 서버 (STS)
  • 자바 SAML 클라이언트

:

당신은 할 수 있습니다. 기존 구현을 사용하는 것이 더 나을 수도 있습니다. OpenAM이 또 다른 가능성입니다. ID 저장소에 대한 여러 가지 옵션을 지원합니다.

클라이언트 측면에서는 SAML : SAML connectivity/toolkit을 참조하십시오.

관련 문제