LTPA(Lightweight Third Party Authentication) 토큰 또는 사용자 이름 토큰에 해당하는
독립형 보안 토큰에 대한 메시지 레벨 WS-Security 정책 세트 및 바인딩을 구성하여 웹 서비스를
보안할 수 있습니다.
시작하기 전에
이 태스크에서는 구성하는 서비스 제공자 및 클라이언트가
JaxWSServicesSamples 애플리케이션에 있다고 가정합니다. 이 애플리케이션을
획득하고 설치하는 방법을 학습하려면 샘플 액세스 문서를 참조하십시오. 서버에서 다음 추적 스펙을 지정하여 발생할 수 있는 향후 구성 문제점을 디버그할 수
있습니다.
*=info:com.ibm.wsspi.wssecurity.*=all:com.ibm.ws.webservices.wssecurity.*=all:
com.ibm.ws.wssecurity.*=all: com.ibm.xml.soapsec.*=all: com.ibm.ws.webservices.trace.*=all:
com.ibm.ws.websvcs.trace.*=all:com.ibm.ws.wssecurity.platform.audit.*=off:
LTPA 토큰을
사용하는 경우 클라이언트 및 서비스 모두에 사용되는 애플리케이션 서버에서 애플리케이션 보안을
사용해야 합니다.
이 태스크 정보
이 주제에서는 사용자 이름 토큰 또는 LTPA 토큰에 대한 WS-Security 정책 세트 및 제공자
바인딩을 구성하는 방법에 대해 설명합니다. 단순성을 위해
이 프로시저에서는 시간소인, 디지털 서명, 암호화 속성을 정책에서 제거하는
방법에 대해 설명합니다. 그러나 최종 구성에서는 이러한 속성을 포함할 수 있습니다.
자세히 학습하려면 클라이언트 및 제공자 애플리케이션 특정 바인딩으로
비대칭 XML 디지털 서명 또는 XML 암호화에
대한 정책 세트 및 바인딩 구성에 대한 문서를 참조하십시오.
이 태스크에서 기본 제공자 일반 바인딩은 제공자 애플리케이션에서 토큰을 이용하는 데 사용됩니다.
호출자 구성이 필요한 경우 애플리케이션 특정 바인딩이 제공자에 대해 추가됩니다.
프로시저
- 사용자 정의 정책 세트를 작성하십시오.
- 관리 콘솔에서 서비스
> 정책 세트 > 애플리케이션 정책 세트를 클릭하십시오.
- 새로 작성을 클릭하십시오.
- Name = OneTokenPolicy를 지정하십시오.
- 적용을 클릭하십시오.
- 정책 아래 추가
> WS-Security를 클릭하십시오.
- 사용자 정의 정책 세트를 편집하십시오.
- 디지털 서명, 암호화, 시간소인을 제거하십시오.
- 관리 콘솔에서 WS-Security > 기본 정책을
클릭하십시오.
- 메시지 레벨 보호를 선택 취소하십시오.
- 적용을 클릭하십시오.
- UsernameToken 또는 LTPA 토큰을 추가하십시오.
- 정책 세부사항에서 토큰 정책 요청을
클릭하십시오.
- 토큰 유형 추가를 선택하십시오.
- UsernameToken을 사용하려는 경우 UserName을 선택하십시오.
LTPA 토큰을 사용하려는 경우 LTPA를 선택하십시오.
Token
name=myToken.
- 확인을 클릭하십시오.
- OneTokenPolicy 정책 세트를 사용하도록 클라이언트를 구성하십시오.
- 관리 콘솔에서 애플리케이션
> 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > JaxWSServicesSamples
> 서비스 클라이언트 정책 세트 및 바인딩을 클릭하십시오.
- 웹 서비스 클라이언트 자원을 선택하십시오.
- 정책 세트 첨부를 클릭하십시오.
- OneTokenPolicy를 선택하십시오.
- 클라이언트에 대한 사용자 정의 바인딩을 작성하십시오.
- 다시 웹 서비스 자원을 선택하십시오.
- 바인딩 지정을 클릭하십시오.
- 새 애플리케이션 특정 바인딩을 클릭하여 애플리케이션 특정
바인딩을 작성하십시오.
- 바인딩 구성 이름을 지정하십시오. name:
oneTokenClientBinding
- 추가 > WS-Security를 클릭하십시오.
- 기본 메시지 보안 정책 바인딩 패널이 표시되지 않으면
WS-Security를 선택하십시오.
- 클라이언트에 대한 사용자 정의 바인딩을 편집하십시오.
- 인증 및 보호를 클릭하십시오.
- ID 사용자 이름을 전송하도록 ID 토큰 생성기를 편집하십시오.
- request:myToken을 클릭하십시오.
- 적용을 클릭하십시오.
- 콜백 핸들러를 클릭하십시오. User
name=(yourUserid) Password=(yourPassword)
문제점 방지: 이는 제공자 시스템의 사용자 레지스트리에서 유효한 사용자 ID/비밀번호입니다.
LTPA 토큰을 사용하는 경우 사용자 ID/비밀번호는 이용자 및 제공자 레지스트리 모두에서 유효해야 합니다.
gotcha
- (선택사항) UsernameToken을 구성하는 경우 다음 WS-Security 사용자 정의 특성을
추가하십시오.
*com.ibm.wsspi.wssecurity.token.username.addNonce=true
*com.ibm.wsspi.wssecurity.token.username.addTimestamp=true
UsernameToken
사용자 정의 특성 기본 일반 바인딩에 지정되어 있으므로 이
사용자 정의 특성이 추가됩니다. 여기서 해당 특성을 지정하지 않으면
기본 제공자 일반 바인딩에서 이 특성을 제거하거나 해당 특성을 포함하지 않는
제공자에 대한 애플리케이션 특정 바인딩을 작성해야 합니다.
- 확인을 클릭하십시오.
- 저장을 클릭하십시오.
- OneTokenPolicy 정책 세트를 사용하도록 제공자를 구성하십시오.
- 관리 콘솔에서 애플리케이션
> 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > JaxWSServicesSamples
> 서비스 제공자 정책 세트 및 바인딩을 클릭하십시오.
- 웹 서비스 제공자 자원(OneTokenPolicy)을 선택하십시오.
- 정책 세트 첨부를 클릭하십시오.
- OneTokenPolicy를 선택하십시오.
참고: 제공자
애플리케이션에 첨부된 바인딩이 없으므로 토큰 이용자에 대해 기본 제공자 일반 바인딩을
사용합니다.
- (선택사항) 제공자에 대한 호출자 구성을 작성하려면 제공자에 대한 사용자 정의 바인딩을 작성하십시오.
- 다시 웹 서비스 제공자 자원을 선택하십시오.
- 바인딩 지정을 클릭하십시오.
- 새 애플리케이션 특정 바인딩을 클릭하여 애플리케이션 특정
바인딩을 작성하십시오.
- Bindings configuration name:oneTokenProvBinding을 지정하십시오.
- 추가 > WS-Security를 클릭하십시오.
- 기본 메시지 보안 정책 바인딩 패널이 표시되지 않으면
WS-Security를 선택하십시오.
- (선택사항) 호출자 구성이 작성된 경우 제공자에 대한 사용자 정의 바인딩을 편집하십시오.
- 호출자 > 새로 작성을 클릭하십시오.
Name:
myCaller.
- UsernameToken을 사용하는 경우 다음을 입력하십시오.
- 호출자 ID 로컬 이름:
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken
- LTPA 토큰을 사용하는 경우 다음을 입력하십시오.
- 호출자 ID 로컬 이름: LTPAv2
- 호출자 ID 로컬 URI: http://www.ibm.com/websphere/appserver/tokentype
- 확인을 클릭하십시오.
- 저장을 클릭하여 구성 변경사항을 저장하십시오.
- 클라이언트 제공자를 다시 시작하십시오.
- 클라이언트 및 제공자를 중지하십시오.
- 클라이언트 및 제공자를 다시 시작하십시오.
- 서비스를 테스트하십시오.
- 웹 브라우저에서 JaxWSServicesSamples를 가리키십시오. http://localhost:9080/wssamplesei/demo
문제점 방지: 프로파일이 동일한 시스템에 없거나 포트가 9080이 아니면
올바른 호스트 이름 및 포트를 제공해야 합니다.
gotcha
- 메시지 유형 동기 에코를 선택하십시오.
- SOAP 1.2 사용이 선택되지 않았는지 확인하십시오.
- 메시지를 입력하고 메시지 보내기를 클릭하십시오. 샘플
애플리케이션은 JAXWS==>Message로 회신해야 합니다.
결과
JaxWSServicesSamples 웹 서비스 애플리케이션은 요청 메시지에서
UsernameToken 또는 LTPA 토큰을 생성 및 이용하도록 구성됩니다.