웹 서비스 보안 토큰 전파
웹 서비스 보안은 SOAP 메시지의 보안 헤더에서 보안 토큰을 보낼 수 있습니다. 이 보안 토큰은 메시지 부분을 서명, 확인, 암호화 또는 복호화하는 데 사용할 수 있습니다. 보안 토큰은 독립형 보안 토큰으로 전송되고 요청 이용자의 호출자로 설정될 수도 있습니다. 웹 서비스 보안 토큰 전파는 SOAP 메시지의 보안 헤더에 있는 wsse:BinarySecurityToken 요소에서 이러한 독립형 보안 토큰을 전송하는 데 사용됩니다.
- 사용자 이름 토큰
- X.509 토큰
- LTPA(Lightweight Third-Party Authentication) 토큰
사용자 정의 보안 토큰을 사용하도록 웹 서비스 보안을 구성할 수 있습니다. 웹 서비스 보안은 동일한 전파 토큰 형식을 보안 속성 전파 기능으로 사용합니다. 웹 서비스 보안은 모든 기본 제공 보안 토큰 유형을 전파할 수 있으며 보안 속성 전파 기능에 의해 직렬화 가능한 동안 사용자 정의 토큰 유형을 전파할 수 있습니다.
- 토큰 유형 URI: http://www.ibm.com/websphere/appserver/tokentype
- 토큰 유형 로컬 이름: LTPA_PROPAGATION
전파 토큰이 생성되면 웹 서비스 보안은 현재 스레드에 대해 직렬화 가능한 모든 보안 토큰을 RunAs 주제에 수집하고 wsse:BinarySecurityToken 토큰 내에서 보안 토큰을 직렬화합니다. 현재 스레드에서 필수인 RunAs 주제 및 신임을 갖기 위해 JAAS 로그인은 전파 토큰을 작성하기 전에 현재 스레드에서 발생해야 합니다.
일반적인 상황에서는 서비스 제공자의 경우 JAAS(Java Authentication and Authorization Service) 로그인은 인바운드 토큰에 정의된 호출자 파트를 WS-Security 구성에 포함하는 방법으로 얻을 수 있습니다. 웹 서비스 클라이언트의 경우 JAAS 로그인은 HTTP 기본 인증을 구성하여 얻을 수 있습니다.
- 보안된 서비스 내의 클라이언트가 직렬화 가능한 보안 토큰 및 신임을 현재 RunAs 주제에서 다운스트림 서버로 전파합니다.
- 웹 컨테이너에서 HTTP 기본 인증으로 보안된 서버 기반 클라이언트는
전파 토큰을 사용할 수 있습니다.
서버 기반 클라이언트의 경우 전파 토큰의 오버헤드는 필수가 아닙니다. ID만이 필수이고 전체 신임 세트는 필수가 아니기 때문입니다. 그러나 클라이언트 애플리케이션이 웹 컨테이너에 의해 호출된 후에 주제를 변경하는 경우에는 전파 토큰을 사용하는 것이 적합할 수 있습니다. ID 토큰만 필수인 경우에는 보통 LTPA 토큰이 적합할 수도 있습니다. 이 LTPA 토큰을 JAAS 로그인이 작성한 RunAs 주제에서 생성할 수 있습니다.