JAX-WS에 대한 콜백 핸들러 설정

이 페이지의 메시지 헤더에서 보안 토큰을 얻는 방법을 판별하는 JAX-WS에 대한 콜백 핸들러 설정을 구성할 수 있습니다.

일반 셀 레벨 또는 서버 레벨 바인딩을 편집할 때 콜백 핸들러 설정을 구성할 수 있습니다. 또한 정책 세트가 요구하는 토큰 및 메시지 파트에 대한 애플리케이션 특정 바인딩을 구성할 수도 있습니다.

문제점 방지 문제점 방지: 이 페이지에서 키 저장소 특성 값을 지정하기 전에 생성기에 대해 제공하는 키 저장소/별명 정보 및 다른 목적으로 사용되는 이용자에 대해 제공하는 키 저장소/별명 정보를 이해하고 있어야 합니다. 주요 차이는 X.509 콜백 핸들러에 대한 별명에 적용됩니다. gotcha
생성기
암호화 생성기와 연관되어 사용되는 경우 생성기에 제공되는 별명을 사용하여 메시지를 암호화하기 위해 공개 키를 검색합니다. 비밀번호는 필요하지 않습니다. 암호화 생성기와 연관된 콜백 핸들러에서 입력된 별명에 비밀번호 없이 액세스할 수 있어야 합니다. 이는 키 저장소에서 연관된 개인 키 정보가 별명에 없음을 의미합니다. 서명 생성기와 연관되어 사용되는 경우 생성기에 제공되는 별명을 사용하여 메시지에 서명하기 위한 개인 키를 검색합니다. 비밀번호가 필요합니다.
[업데이트 됨- 2013년 10월]
문제점 방지 문제점 방지: 메시지에 서명하는 데 사용하는 별명은 비밀번호가 필요하고 메시지를 암호화하는 데 사용하는 별명은 비밀번호가 필요하지 않기 때문에 서명 생성기 및 암호화 생성기 모두에 동일한 별명을 사용할 수 없습니다. gotcha
[업데이트 됨- 2013년 10월]
이용자
암호화 이용자와 연관되어 사용되는 경우 이용자에 제공되는 별명을 사용하여 메시지를 복호화하기 위한 개인 키를 검색합니다. 비밀번호가 필요합니다.

서명 이용자와 연관되어 사용되는 경우 이용자에 제공되는 별명을 사용하여 BinarySecurityToken으로 SOAP 보안 헤더에 전달되지 않는 X.509 인증을 분석하는 데 사용되는 공개 키를 검색합니다. 비밀번호는 필요하지 않습니다.

서명 이용자와 연관된 콜백 핸들러에서 입력된 별명에 비밀번호 없이 액세스할 수 있어야 합니다. 이는 키 저장소에서 연관된 개인 키 정보가 별명에 없음을 의미합니다.

X.509 인증이 BinarySecurityToken으로 SOAP 보안 헤더에 전달되지 않은 경우 X.509 인증을 분석하는 데 사용될 SOAP 보안 헤더의 서명 요소 내의 KeyInfo 요소에 SecurityTokenReference가 표시됩니다. 사용될 수 있는 메소드는 키 ID, X.509 발행자 이름과 발행자 일련 번호지문입니다. 이용자는 서명 이용자와 연관된 X.509 토큰 이용자에 대해 키 저장소/별명이 구성되어 있을 때 메시지 외부의 X.509 인증을 분석하기 위해 이러한 세 가지 메소드를 승인합니다. X.509 토큰 이용자는 메시지 외부에 표시되는 인증을 키 저장소 항목으로 동적으로 분석하지 않습니다. 사용될 인증은 구성 시 알려져야 하며 X.509 토큰 이용자 콜백 핸들러에 하드코딩되어야 합니다.

X.509 인증이 메시지 외부에서 분석될 경우, 일반 바인딩을 사용할 때는 여러 인증을 분석할 수 있지만 애플리케이션 특정 바인딩을 사용할 때는 인증을 하나만 분석할 수 있습니다. 애플리케이션 특정 바인딩에서는 사용 가능한 X.509 토큰 이용자가 하나뿐이므로, 애플리케이션 특정 바인딩을 사용할 경우에는 메시지 외부에서 인증을 하나만 분석할 수 있습니다. 사용할 X.509 토큰 이용자가 하나뿐이므로 사용할 별명도 하나뿐이며, 따라서 인증을 하나만 분석할 수 있습니다. 예를 들어, 인증 A에 대한 X.509 토큰 이용자가 구성된 경우, 클라이언트 A가 인증 A에 대한 키 ID를 전송한 경우 인증을 검색할 수 있습니다. 그러나 클라이언트 B가 인증 B에 대한 키 ID를 전송한 경우 인증을 검색할 수 없고 메시지가 거부됩니다.

일반 바인딩을 사용할 경우, 각각 서로 다른 인증이 구성된 여러 X.509 토큰 이용자(키 저장소/별명)를 작성할 수 있습니다. 분석하려는 인증과 연관된 모든 X.509 토큰 이용자는 바인딩에서 서명된 파트 구성의 서명 키 정보에 지정됩니다.

X.509 인증이 BinarySecurityToken으로 SOAP 보안 헤더에 전송될 때 서명 이용자와 연관된 X.509 토큰 이용자에 구성된 키 저장소/별명이 있는 경우 이용자에 구성된 인증이 메시지에 전달된 인증과 비교됩니다. 일치하지 않는 경우 메시지가 거부됩니다. 이 동작은 JAX-RPC와 다릅니다. X.509 토큰 이용자에 대해 구성된 별명과 연관된 인증은 인바운드 인증에 대한 신뢰를 평가하는 데 사용되지 않습니다. 신뢰 저장소 및 cert 저장소만이 이 목적으로 사용됩니다.

서명 이용자와 연관된 X.509 토큰 이용자에 구성된 인증서를 KeyInfo 분석에 사용할 수 있지만 일치하지 않는 메시지에 전달된 X.509 인증서를 거부하지 않으려는 경우 다음 사용자 정의 특성을 X.509 토큰 이용자 콜백 핸들러에 추가할 수 있습니다.
com.ibm.wsspi.wssecurity.consumer.callbackHandlerKeystoreLimitsAccess=false
[업데이트 됨- 2013년 10월]
문제점 방지 문제점 방지: 메시지를 복호화하는 데 사용하는 별명은 비밀번호가 필요하고 서명을 확인하는 데 사용하는 별명은 비밀번호가 필요하지 않기 때문에 서명 이용자 및 암호화 이용자 모두에게 동일한 별명을 사용할 수 없습니다. gotcha
[업데이트 됨- 2013년 10월]
일반 셀 레벨 바인딩을 편집할 때 이 관리 콘솔 페이지를 보려면 다음 조치를 완료하십시오.
  1. 서비스 > 정책 세트 > 기본 정책 세트 바인딩을 클릭하십시오.바인딩 패널에 기본 바인딩으로 설정된 바인딩(예: 제공자 샘플 바인딩)이 표시됩니다.
  2. 이 기본 바인딩을 편집하려면 서비스 > 정책 세트 > 일반 제공자 정책 세트 바인딩을 클릭하십시오.
  3. 첫 번째 단계에서 판별된 기본 바인딩의 이름을 클릭하십시오. (예: 제공자 샘플).
  4. 정책 테이블에서 WS-Security 정책을 클릭하십시오.
  5. 기본 메시지 보안 정책 바인딩 섹션에서 인증 및 보호 링크를 클릭하십시오.
  6. 보호 토큰 섹션 또는 인증 토큰 섹션에서 name_of_token 링크를 클릭하십시오.
  7. 콜백 핸들러 링크를 클릭하십시오.
정책 세트에 필요한 토큰 및 메시지 파트에 대한 애플리케이션 특정 바인딩을 구성할 때 이 관리 콘솔 페이지를 보려면 다음 조치를 완료하십시오.
  1. 애플리케이션 > 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션을 클릭하십시오.
  2. 웹 서비스를 포함하는 애플리케이션을 선택하십시오. 애플리케이션에 서비스 제공자 또는 서비스 클라이언트가 포함되어야 합니다.
  3. 웹 서비스 특성 섹션에서 서비스 제공자 정책 세트 및 바인딩 링크 또는 서비스 클라이언트 정책 세트 및 바인딩을 클릭하십시오.
  4. 바인딩을 선택하십시오. 미리 정책 세트를 첨부하고 애플리케이션 특정 바인딩을 지정해야 합니다.
  5. 정책 테이블에서 WS-Security 정책을 클릭하십시오.
  6. 기본 메시지 보안 정책 바인딩 섹션에서 인증 및 보호 링크를 클릭하십시오.
  7. 보호 토큰 섹션 또는 인증 토큰 섹션에서 name_of_token 링크를 클릭하십시오.
  8. 콜백 핸들러 링크를 클릭하십시오.

이 관리 콘솔 페이지는 JAX-WS(Java API for XML Web Services) 애플리케이션에만 적용됩니다.

콜백 핸들러는 구성할 다른 토큰에 대해 필드를 다르게 표시합니다. 보호를 위한 생성자 또는 이용자 토큰을 구성할지 아니면 인증을 위한 인바운드 또는 아웃바운드 토큰을 구성할지 여부에 따라, 이 패널의 섹션 및 필드는 각 필드에 대한 설명에서 언급한 바와 같이 이 주제에 설명된 필드의 일부 또는 모두를 표시합니다.

클래스 이름

클래스 이름 섹션의 필드는 모든 유형의 토큰 구성에 사용 가능합니다.

콜백 핸들러에 사용할 클래스 이름을 선택하십시오. 표준 조작의 경우 내장 기본값 사용 옵션을 선택하십시오. 사용자 정의 토큰 유형을 사용할 경우에만 사용자 정의 사용 옵션을 사용하십시오.

Kerberos 사용자 정의 토큰 유형의 경우, 토큰 생성기 구성에 com.ibm.websphere.wssecurity.callbackhandler.KRBTokenGenerateCallbackHandler 클래스 이름을 사용하십시오. 토큰 이용자 구성에는 com.ibm.websphere.wssecurity.callbackhandler.KRBTokenConsumeCallbackHandler를 사용하십시오.

내장 기본값 사용

클래스 이름에 대한 기본값이 사용됨을 지정합니다. 이 단일 선택 단추를 선택하는 경우 기본값(필드에 표시됨)을 사용하십시오. 이 이름은 토큰 유형에 기반하고, 콜백 핸들러가 토큰 생성기 또는 토큰 이용자에 대한 것인지 여부에 기반합니다. 이 옵션은 사용자 정의 사용 옵션과 상호 배타적입니다.

사용자 정의 사용

클래스 이름에 대한 사용자 정의 값이 사용됨을 지정합니다. 사용자 정의 클래스 이름을 사용하려면 이 단일 선택 단추를 선택하고 필드에 이름을 입력하십시오.

이 입력 필드에 사용 가능한 기본값이 없습니다. 다음 테이블의 정보를 사용하여 이 값을 판별하십시오.

표 1. 콜백 핸들러 및 연관된 토큰 유형의 사용자 정의 클래스 이름. 콜백 핸들러는 메시지 헤더에서 보안 토큰을 얻는 방법을 판별합니다.
토큰 유형 이용자 또는 생성자 콜백 핸들러 클래스 이름
UsernameToken 이용자 com.ibm.websphere.wssecurity.callbackhandler.UNTConsumeCallbackHandler
UsernameToken 생성자 com.ibm.websphere.wssecurity.callbackhandler.UNTGenerateCallbackHandler
X509Token 이용자 com.ibm.websphere.wssecurity.callbackhandler.X509ConsumeCallbackHandler
X509Token 생성자 com.ibm.websphere.wssecurity.callbackhandler.X509GenerateCallbackHandler
LTPAToken/LTPAPropagationToken 이용자 com.ibm.websphere.wssecurity.callbackhandler.LTPAConsumeCallbackHandler
LTPAToken/LTPAPropagationToken 생성자 com.ibm.websphere.wssecurity.callbackhandler.LTPAGenerateCallbackHandler
SecureConversationToken 이용자 com.ibm.ws.wssecurity.impl.auth.callback.SCTConsumeCallbackHandler
SecureConversationToken 생성자 com.ibm.ws.wssecurity.impl.auth.callback.WSTrustCallbackHandler

이 단추는 내장 기본값 사용 옵션과 상호 배타적입니다.

인증(생성자)

인증 섹션의 필드는 보호 토큰을 구성하려는 경우 사용 가능합니다. 생성자 토큰의 경우, 목록에서 인증 저장소를 선택하도록 클릭하거나 새로 작성 단추를 클릭하여 인증 저장소를 추가할 수 있습니다.

인증(이용자)

인증 섹션의 필드는 보호 토큰을 구성하려는 경우 사용 가능합니다. 이용자 토큰의 경우, 인증 신뢰 옵션 또는 인증 저장소 옵션을 사용하여 인증 저장소를 구성할 수 있습니다.

인증 - 인증 신뢰(이용자)

이 옵션은 토큰 이용자에만 적용됩니다. 이 옵션은 시스템이 모든 인증을 신뢰함을 표시하며, 특정 인증 저장소를 정의하지 않습니다. 이 옵션은 인증 저장소 옵션과 상호 배타적입니다.

인증 - 인증 저장소(이용자)

이 옵션은 토큰 이용자에만 적용됩니다. 인증 취소 목록(CRL)을 포함할 수 있는 중간 인증이 있는 인증 저장소 콜렉션을 지정하려면 이 옵션을 사용하십시오. 입력 필드에 지정된 인증 저장소를 신뢰하려면 이 옵션을 선택하십시오. 이 옵션은 인증서 신뢰 옵션과 상호 배타적입니다. 인증 저장소 옵션을 선택하면 새 인증 저장소 및 신뢰 앵커 저장소를 구성할 수 있도록 새로 작성 단추가 사용 가능합니다.

인증 저장소 필드의 값을 기본값(없음)으로 설정할 수 있습니다. 하지만 신뢰 앵커 저장소 값은 특정 값으로 설정해야 합니다. 기본값이 없습니다. 모든 인증 신뢰 옵션을 선택하지 않은 경우 신뢰 앵커가 필수입니다.

기본 인증

기본 인증 섹션의 필드는 LTPA 전파 토큰이 아닌 인증 토큰을 구성하려는 경우 사용 가능합니다.

Kerberos 사용자 정의 토큰 유형의 경우, Kerberos 로그인의 기본 인증 섹션을 완료해야 합니다.

사용자 이름

인증할 사용자 이름을 지정합니다.

비밀번호

인증할 비밀번호를 지정합니다. 이 입력 필드에 인증을 위한 비밀번호를 입력하십시오.

비밀번호 확인

확인할 비밀버호를 지정합니다.

키 저장소

런타임 시 필요한지 여부를 판별할 때 키 저장소 필드를 사용할 수 없습니다.

키 저장소 이름 목록에서 사용자 정의를 클릭하여 사용자 정의 키 저장소를 정의하거나, 외부 정의된 키 저장소 이름 중 하나를 클릭하거나, 키 저장소가 필요하지 않은 경우 없음을 클릭하십시오.

키 저장소 - 이름

사용하려는 키 저장소의 이름을 지정합니다.

이 메뉴에서 키 저장소의 이름을 클릭하거나 다음 값 중 하나를 선택하십시오.
없음
키 저장소를 사용하지 않도록 지정합니다.
사용자 정의
사용자 정의 키 저장소를 사용하도록 지정합니다. 사용자 정의 키 저장소 및 키 설정을 구성하려면 사용자 정의 키 저장소 구성 링크를 클릭하십시오.

구성된 키 저장소에서 검색할 키의 속성을 지정합니다. 키 섹션의 일부 필드는 런타임 시 필요한지 여부를 판별할 때 사용할 수 없습니다.

중앙 집중식 관리 키 저장소가 키 저장소로 선택된 경우 키 섹션의 필드를 사용할 수 있습니다.

이름

사용할 키의 이름을 지정합니다. 선택된 중앙 집중식 관리 키 저장소에서 사용할 수 있는 키로 목록이 채워집니다. 사용하려는 키의 이름을 지정하거나, 사용할 키가 없는 경우 '(없음)'을 지정하십시오.

별명

선택된 키 이름의 별명을 표시합니다.

비밀번호

사용하려는 키의 비밀번호를 지정합니다. 이 필드는 런타임 시 필요하다고 판별되는 경우에만 사용 가능합니다.

비대칭 암호화 생성자 또는 비대칭 서명 이용자의 공개 키에 대한 비밀번호는 설정할 수 없습니다. 기사의 앞 부분에 있는 '문제점 방지'를 참조하십시오.

비밀번호 확인

사용하려는 키의 비밀번호 확인을 지정합니다. 이 필드는 런타임 시 필요하다고 판별되는 경우에만 사용 가능합니다.

비대칭 아웃바운드 암호화 또는 인바운드 서명의 공개 키에 대한 키 비밀번호 확인은 제공하지 마십시오.

키 저장소 - 사용자 정의 키 저장소 구성

사용자 정의 키 저장소 작성을 위한 링크를 지정합니다. 사용자 정의 키 저장소를 구성할 수 있는 패널을 열려면 이 링크를 클릭하십시오.

키 저장소 비밀번호

키 저장소 파일에 액세스하는 데 사용되는 비밀번호를 지정합니다.

키 저장소 경로

키 저장소 파일의 위치를 지정합니다.

이 변수가 시스템에서 제품 경로로 확장되므로 경로 이름에 ${USER_INSTALL_ROOT}를 사용하십시오. 이 변수에서 사용한 경로를 변경하려면 환경 > WebSphere 변수를 클릭하고 USER_INSTALL_ROOT를 클릭하십시오.

키 저장소 유형

키 저장소 파일 형식의 유형을 지정합니다.

이 필드에 대해 다음 값 중 하나를 선택하십시오.
JKS
키 저장소가 JKS(Java Keystore) 형식을 사용하는 경우에 이 옵션을 사용하십시오.
JCEKS
JCE(Java Cryptography Extension)가 SDK(Software Development Kit)에 구성된 경우 이 옵션을 사용하십시오. 기본 IBM® JCE는 Application Server에 구성되어 있습니다. 이 옵션은 Triple DES 암호화를 사용하여 저장된 개인 키에 보다 강한 보호를 제공합니다.
[z/OS] JCERACFKS
인증이 SAF 키 링(z/OS®에만 해당)에 저장되는 경우 JCERACFKS를 사용하십시오.
PKCS12KS(PKCS12)
키 저장소 파일이 PKCS#12 파일 형식을 사용하는 경우에 이 옵션을 사용하십시오.

사용자 정의 특성

사용자 정의 특성 섹션의 필드는 모든 유형의 토큰 구성에 사용 가능합니다.

이름 값 쌍을 사용하여 콜백 핸들러에 필요한 사용자 정의 특성을 추가할 수 있습니다.

JAX-WS 프로그래밍 모델을 사용하는 경우 서명자 인증 암호화를 구현하려면, 암호화 토큰 생성기의 콜백 핸들러에서 true 값의 사용자 정의 특성 com.ibm.wsspi.wssecurity.token.cert.useRequestorCert를 추가하십시오. 이 구현은 SOAP 요청의 서명자에 대한 인증을 사용하여 SOAP 응답을 암호화합니다. 이 사용자 정의 특성은 응답 생성기에서 사용됩니다.

Kerberos 토큰 프로파일 V1.1에 대한 OASIS 웹 서비스 보안 스펙을 기반으로 하는 Kerberos 사용자 정의 토큰의 경우, 토큰 생성에 com.ibm.wsspi.wssecurity.krbtoken.clientRealm 특성을 지정하십시오. 이 특성은 클라이언트와 연관되는 Kerberos 영역의 이름을 지정하고, Kerberos 클라이언트 영역에서 Kerberos 로그인이 시작될 수 있도록 합니다. 지정되지 않을 경우 기본 Kerberos 영역 이름이 사용됩니다. 이 특성은 단일 Kerberos 영역 환경에 대해 선택적입니다.

Kerberos 사용자 정의 특성 com.ibm.wsspi.wssecurity.krbtoken.loginPrompt는 값이 true이면 Kerberos 로그인을 사용 가능하게 합니다. 기본값은 false입니다. 이 특성은 선택적입니다.

JAX-WS 프로그래밍 모델에 대해 사용자 이름 토큰을 구성할 때, 재전송 공격을 방지하기 위해 콜백 핸들러 구성에 다음 사용자 정의 특성을 추가하도록 적극 권장됩니다. 이러한 사용자 정의 특성은 메시지 인증에 nonce 및 시간소인을 사용하고 확인합니다.
특성 이름(생성기) 특성 값
com.ibm.wsspi.wssecurity.token.username.addNonce true
com.ibm.wsspi.wssecurity.token.username.addTimestamp true
특성 이름(이용자) 특성 값
com.ibm.wsspi.wssecurity.token.username.verifyNonce true
com.ibm.wsspi.wssecurity.token.username.verifyTimestamp true

이름

사용하려는 사용자 정의 특성 이름을 지정합니다.

사용자 정의 특성은 처음에 이 열에 표시되지 않습니다. 사용자 정의 특성에 대한 다음 조치 중 하나를 클릭하십시오.

단추 결과 조치
새로 작성 새 사용자 정의 특성 항목을 작성합니다. 사용자 정의 특성을 추가하려면 이름 및 값을 입력하십시오.
삭제 선택된 사용자 정의 특성을 제거합니다.

사용하려는 사용자 정의 특성 값을 지정합니다. 입력 필드를 사용하여 사용자 정의 특성 값을 입력하거나 삭제할 수 있습니다.



파일 이름: uwbs_wsspsbch.html