키워드를 사용하여 생성기 보안 제한조건에 기밀성에 필요한 임시값 추가

이 태스크 정보

기밀성의 임시값은 메시지의 특정 요소에 임시값이 임베드되고 요소가 암호화되도록 지정하는 데 사용됩니다. 임시값은 무작위로 생성되는 암호화 토큰입니다. 메시지의 특정 파트에 임시값을 추가하면 생성된 임시값이 고유하므로 도난 및 반복 공격을 예방할 수 있습니다. 예를 들어, 임시값이 없으면 HTTP와 같은 비보안 전송을 사용하여 한 시스템에서 다른 시스템으로 사용자 이름 토큰을 전달할 때 토큰이 인터셉트되거나 반복 공격에 사용될 수 있습니다. XML 디지털 서명 및 XML 암호화를 사용하는 경우에도 사용자 이름 토큰을 도난당할 수 있습니다. 임시값을 추가함으로써 이러한 상황을 예방할 수 있습니다.

요청 생성기 또는 응답 생성기에 적용할 생성기 보안 제한조건을 구성하는 경우 키워드를 사용하여 기밀성에 필요한 임시값을 지정하려면 다음 단계를 완료하십시오. 요청 생성기가 클라이언트에 적합하게 구성되고 응답 생성기가 서버에 적합하게 구성됩니다. 다음 단계 중 2단계에서 클라이언트 측 확장기능을 구성하거나 3단계에서 서버 측 확장기능을 구성해야 합니다.

프로시저

  1. 창 > 퍼스펙티브 열기 > J2EE를 클릭하십시오.
  2. 옵션: 프로젝트 탐색기 창을 사용하여 클라이언트 측 확장기능을 찾으십시오. 클라이언트 배치 디스크립터 창이 표시됩니다. 이 웹 서비스에는 구성해야 하는 확장기능이 포함되어 있습니다. 클라이언트 측 확장기능을 찾으려면 다음 단계를 완료하십시오.
    1. 웹 서비스 > 클라이언트 절을 펼치고 웹 서비스 이름을 두 번 클릭하십시오.
    2. WS 확장기능 탭을 클릭하고 요청 생성기 구성 절을 펼치십시오.
  3. 옵션: 프로젝트 탐색기 창을 사용하여 서버 측 확장기능을 찾으십시오. 웹 서비스 편집기 창이 표시됩니다. 이 웹 서비스에는 구성해야 하는 확장기능이 포함되어 있습니다. 서버 측 확장기능을 찾으려면 다음 단계를 완료하십시오.
    1. 웹 서비스 > 서비스 절을 펼치고 웹 서비스 이름을 두 번 클릭하십시오.
    2. 확장기능 탭을 클릭하고 응답 생성기 서비스 구성 세부사항 절을 펼치십시오.
  4. 기밀성 절을 펼치십시오. 무결성이 디지털 서명을 참조하는 반면 기밀성은 암호화를 참조합니다. 기밀성은 네트워크에서 메시지가 이동할 때 누군가 메시지를 가로챌 위험성을 감소시킵니다. 기밀성 스펙을 사용하여 메시지를 전송하기 전에 메시지를 암호화하고 예정된 대상에서 메시지를 수신하면 메시지를 복호화합니다. 암호화에 대한 자세한 정보는 XML 암호화를 참조하십시오.
  5. 추가를 클릭하여 무결성에 필요한 임시값을 지정하십시오. 기밀성 대화 상자 창이 표시됩니다. 다음 단계를 완료하여 구성을 지정하십시오.
    1. 기밀성 이름 필드에 기밀성 요소의 이름을 지정하십시오. 예를 들어, conf_nonce를 지정할 수 있습니다.
    2. 순서 필드에 순서를 지정하십시오. 값(양의 정수여야 함)은 암호화가 처리되는 순서를 지정합니다. 순서 값 1은 암호화가 첫 번째로 완료되도록 지정합니다.
  6. 임시값에서 추가를 클릭하고 임시값 통용어를 선택하십시오. http://www.ibm.com/websphere/webservices/wssecurity/dialect-was 통용어는 임시값이 추가되고 암호화된 메시지 파트를 지정합니다. 이 통용어를 선택하면 임시값 키워드에서 다음 키워드 중 하나를 선택할 수 있습니다.
    bodycontent
    메시지의 사용자 데이터 부분을 지정합니다. 이 키워드를 선택하면 SOAP(Simple Object Access Protocol) 메시지 본문에 임시값이 임베드되고 본문이 암호화됩니다.
    usernametoken
    사용자 이름 및 비밀번호와 같은 기본 인증 정보가 포함된 사용자 이름 토큰을 지정합니다. 일반적으로 사용자 정보가 안전하도록 사용자 이름 토큰을 암호화합니다. 이 키워드를 선택하면 사용자 이름 토큰 요소에 임시값 요소가 임베드되고 암호화됩니다.
    digestvalue
    고유 요약 값을 지정합니다. SOAP 메시지의 일부가 서명된 경우 고유 요약 값이 작성되며 수신자가 메시지의 무결성을 검사하는 데 사용됩니다. digestvalue 요소를 암호화하여 요약 값을 보안 설정할 수 있습니다. 이 키워드를 선택하면 digestvalue 요소에 임시값이 임베드되고 요소가 암호화됩니다.
  7. 메시지 파트 절에서 추가를 클릭하고 메시지 파트 통용어 필드에서 http://www.ibm.com/websphere/webservices/wssecurity/dialect-was를 선택하십시오.
  8. 메시지 파트 절에서 메시지 파트 키워드를 선택하십시오.
    중요사항: 기밀성에 임시값을 지정하려면 메시지 파트 절에 최소한 하나의 메시지 파트를 정의해야 합니다. 메시지 파트를 선택하면 임시값의 상위 요소 외에도 메시지 파트를 암호화합니다.
  9. 확인을 클릭하여 구성 변경사항을 저장하십시오.
    참고: 생성기와 이용자의 이 구성이 일치해야 합니다.
    임시값 외에도 시간소인 요소를 암호화하도록 지정할 수 있습니다. 자세한 정보는 다음 문서를 참조하십시오.

다음 예제는 SOAP 메시지의 일부로 여기서는 임시값이 bodycontent 요소에 삽입되고 bodycontent 키워드 및 http://www.ibm.com/websphere/webservices/wssecurity/dialect-was 통용어를 사용하여 암호화됩니다.
중요사항: 임시값이 암호화되었기 때문에 메시지에서 임시값을 볼 수 없습니다.
<soapenv:Body soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
   <EncryptedData Id="wssecurity_encryption_id_1669600751905274321" 
    Type="http://www.w3.org/2001/04/xmlenc#Content" xmlns="http://www.w3.org/2001/04/xmlenc#">
      <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc"/>
      <CipherData>
         <CipherValue>pZpVL6Rs6zhvu8UrC7TH3BA2zvOdpPpLeHnwH0dCpmdc7ETz1tUHDdXLFxy143nYu91Mxpzsp
          Wt1rWx2Lx9vFGRIfblRSX5lEpV8+0LvezvhJYY/cbTA04mTMUzCfv28v2TI09AZQ4TjII4u+cPeh5f0prBVK1
          E5hLTql4QMcwf/rq9h+tttrJbR7ub3AUgIVo42ucQs5HZbaDijxmdSuFboBql4lv1Ep24ZfeoB/p7aHzyeWy7p
          YtO0bshpks/oBwO/78vxSklVJKu4sUseFvZa+B7sciFneeNnNuRCqB2JXc/vtH83l3AELUZg60ehd4vqvXkyuv
          SLohZ/kKnF/A5c+BP5Bo1pgvwmDEeJItQ5a7LOKkTavLuc2WGtVo1947fnNGm2TN4C6U/cp9ERT7jAB9Lr/1v/8
          ZqPZYmssyME4pGeSWLy232WrPvk6HEu96GHfRt+YXWpVNvSEt/gZw==</CipherValue> 
      </CipherData>
   </EncryptedData>
</soapenv:Body>

다음에 수행할 작업

암호화할 메시지 파트를 지정한 후 메시지를 암호화하는 데 사용되는 메소드를 지정해야 합니다. 자세한 정보는 생성기 바인딩에 필요한 암호화 정보 구성을 참조하십시오.

피드백