
![[8.5.5.6 이상]](../ng_v8556.gif)
Liberty 프로파일 애플리케이션 클라이언트 컨테이너에서의 JAAS 프로그래밍 방식 로그인 구성
Liberty 프로파일 애플리케이션 클라이언트 컨테이너는 JAAS 프로그래밍 방식 로그인을 사용하도록 구성될 수 있습니다.
시작하기 전에
이 태스크 정보
JAAS 로그인 구성은 인증에 로그인 모듈이 어떻게 사용될지, 어느 로그인 모듈이 사용될지를 지정합니다. 다음 내용은 Liberty 프로파일이 클라이언트에 제공하는
JAAS 로그인 구성입니다.
- WSLogin JAAS 로그인 구성: Liberty 프로파일 애플리케이션 클라이언트 컨테이너가 사용자 ID 및 비밀번호를 기반으로 하는 인증을 수행하는 데 사용할 수 있는 일반 JAAS 로그인 구성입니다. 그러나 이 구성은 클라이언트 애플리케이션 모듈의 배치 디스크립터에 지정되는 CallbackHandler 핸들러를 지원하지 않습니다.
- ClientContainer JAAS 로그인 구성: 이 JAAS 로그인 구성은 클라이언트 애플리케이션 모듈의 배치 디스크립터에 CallbackHandler 핸들러가
지정될 경우 이를 인식합니다. 배치 디스크립터에 핸들러가 지정되지 않은 경우에는 프로그래밍 방식으로 지정된 핸들러가 사용됩니다.
JAAS 로그인 구성에 의해 지정된 로그인 모듈은 특정 인증 기술을 구현합니다. 로그인 모듈은 javax.security.auth.callback.CallbackHandler 인터페이스를 사용하여 사용자로부터 신임 정보를 수집할 수 있습니다. Liberty 프로파일은 com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl이라고 하는, CallbackHandler 인터페이스의 비프롬프트 구현을 제공합니다. 이 구현은 애플리케이션 개발자가 사용자에게 프롬프트를 표시할 필요 없이 애플리케이션에 직접 신임 정보를 지정할 수 있게 해 줍니다. CallbackHandler 구현을 지정하는 데는 두 가지 방법이 있습니다.
- 구현을 javax.security.auth.login.LoginContext 생성자의 인수로서, 프로그래밍 방식으로 지정하십시오. 예를 들면 다음과 같습니다.
LoginContext logincontext = new LoginContext("ClientContainer", new WSCallbackHandlerImpl(“user”, "password"));
- 클라이언트 애플리케이션 모듈의 배치 디스크립터(application-client.xml)에 구현 이름을 지정하십시오. 예를 들면 다음과 같습니다.
<callbackhandler>com.acme.callbackhandler.WSCallbackHandlerImpl/<callbackhandler>
- 구현을 javax.security.auth.login.LoginContext 생성자의 인수로서, 프로그래밍 방식으로 지정하십시오. 예를 들면 다음과 같습니다.
참고: WSLogin 로그인 구성은
배치 디스크립터에 CallbackHandler 핸들러를 지정하는 두 번째 방법을 인식하지 않습니다.