Secure Conversation에 대한 보안 컨텍스트 토큰 설정 플로우
이 예 시나리오는 수신인이 포함된 세션 기반의 보안을 위해 WS-Trust 프로토콜을 사용하여 보안 컨텍스트 토큰(SCT)을 초기화 프로그램이 설정하는 방법에 대한 플로우를 설명합니다. 보안 컨텍스트를 설정한 후 보안 컨텍스트 토큰의 파생 키를 사용하여 메시지 레벨 보호를 제공하기 위해 SOAP 메시지를 서명하고 암호화할 수 있습니다. 이 예는 전체 SOAP 메시지 플로우에서 보안 컨텍스트 토큰을 사용하는 메시지 교환에 중점을 둡니다.
OASIS(Organization for the Advancement of Structured Information Standards) WS-SecureConversation(Web Services Secure Conversation) 스펙은 초기화 프로그램과 SOAP 메시지 수신인 사이에서 안전한 세션을 설정하는 방법에 대해 설명합니다. WS-SecureConversation 스펙은 WS-Trust(Web Services Trust) 프로토콜을 사용하여 보안 컨텍스트 토큰을 설정하는 방법도 정의합니다. 제품은 WS-SecureConversation 스펙의 버전 1.3 및 드래프트 버전 모두 지원합니다.
WebSphere® Application Server는 WS-SecureConversation에 대해 보안 컨텍스트 토큰을 발행하는 엔드포인트의 기능을 지원하고 이를 통해 초기화 프로그램과 SOAP 메시지의 수신인 사이에 안전한 세션을 제공합니다.
다음 그림에서는 보안 컨텍스트를 설정하고 세션 기반 보안을 사용하는 데 필요한 플로우를 설명합니다.

초기화 프로그램과 수신인 사이의 메시지 교환
다음 그림은 메시지가 초기화 프로그램과 수신인 사이에서 교환되어 보안 컨텍스트 토큰을 설정하는 방법을 보여줍니다. 두 개의 WS-Trust 프로토콜 RequestSecurityToken(RST) 및 RequestSecurityTokenResponse(RSTR)는 수신인 엔드포인트에서 보안 컨텍스트 토큰을 요청하는 데 사용됩니다.
부트스트랩 정책은 RST를 안전하게 하고 일반적으로 애플리케이션 보안 정책과는 다른 RSTR 요청을 유효성 검증하는 데 사용됩니다.

Secure Conversation 사용 방법을 설명하는 시나리오
- 클라이언트는 보안 컨텍스트 토큰에 대해 RequestSecurityToken(RST) 신뢰 요청을
해당 비밀 키(엔트로피 및 대상 키 크기)가 포함된 애플리케이션 엔드포인트로 전송하고
대상 서비스 비밀 키를 요청합니다.
이 요청은 일반적으로 부트스트랩 정책에 정의된 비대칭 웹 서비스 보안으로 안전합니다.
- RST는 신뢰 서비스로 처리되고 요청이 보안 정책을 기반으로 신뢰되면
신뢰 서비스는 WS-Trust RequestSecurityTokenResponse(RSTR)를 사용하여 대상 서비스 비밀 키가
포함된 보안 컨텍스트 토큰을 리턴합니다.
이 요청은 일반적으로 비대칭 웹 서비스 보안으로 안전합니다. 클라이언트는 RSTR을 신뢰할 수 있는지 부트스트랩 정책을 기반으로 확인합니다.
- RequestSecurityTokenResponse가 신뢰되면 클라이언트는 세션 키를 사용하여
후속 애플리케이션 메시지를 안전(서명 및 암호화)하게 합니다.
세션 키는 초기화 프로그램과 수신인 사이에서 교환되는 초기 WS-Trust RequestSecurityToken 및 RequestSecurityTokenResponse 메시지에서 확보한 보안 컨텍스트 토큰의 비밀에서 파생됩니다.
- 스펙은 초기 비밀을 기반으로 키를 파생하는 방법의 알고리즘을 정의합니다. 대상 웹 서비스는 SOAP 메시지 및 초기 비밀의 보안 헤더에 포함된 메타데이터에서 파생 키를 계산합니다.
- 대상 웹 서비스는 파생 키를 사용하여 애플리케이션 보안 정책을 기반으로 메시지를 확인하고 복호화합니다.
- 대상 웹 서비스는 비밀의 파생 키를 사용하여 애플리케이션 보안 정책을 기반으로 응답을 서명하고 암호화합니다.
- 메시지 교환이 완료될 때까지 3 - 6단계를 반복하십시오.
보안 컨텍스트 토큰의 비밀에서 파생된 키 사용
보안 컨텍스트 토큰이 설정되면 애플리케이션 메시지는 보안 컨텍스트 토큰의 비밀에서 파생된 키를 사용하는 메시지 보호로 안전하게 됩니다. 파생 키는 애플리케이션 메시지를 서명하고 암호화하여 애플리케이션 메시지를 안전하게 하는 데 사용됩니다. 보안 컨텍스트 토큰은 공유 비밀의 ID로 사용되는 UUID를 포함합니다. 토큰 UUID는 SOAP 메시지에서 사용되어 메시지 교환을 위한 보안 컨텍스트 토큰을 식별할 수 있습니다. 비밀은 세션 참가자(이 경우, 초기화 프로그램 및 수신인)가 메모리에 보관하고 보호해야 합니다. 비밀이 손상되면 참가자 사이의 Secure Conversation이 손상됩니다.

WS-ReliableMessaging(Web Services Reliable Messaging)을 제외한 유사한 시나리오는 WS-SecureConversation 퍼스펙티브에서 가능합니다. 신뢰할 수 있는 메시징 보안을 위해 보안 컨텍스트 토큰을 설정하는 예를 참조하십시오.