STS와 통신하도록 정책 세트 및 바인딩 구성

웹 서비스 클라이언트가 외부 보안 토큰 서비스(STS)에서 SAML 어설션을 요청할 수 있도록 정책 세트 및 바인딩 문서를 구성합니다.

시작하기 전에

설치 후 기존 프로파일에 SAML 구성 설정을 추가하거나 새 서버 프로파일을 작성해야 합니다. 자세한 정보는 SAML 구성 설정을 참조하십시오.

이 태스크 정보

WebSphere® Application Server(SAML 포함)에서는 외부 보안 토큰 서비스(STS)와 통신할 때 웹 서비스 보안 정책 세트 및 바인딩을 사용하여 웹 서비스 클라이언트를 지원합니다. 웹 서비스 클라이언트는 정책 세트 및 바인딩을 사용하여 대상 웹 서비스 제공자와 통신합니다. 웹 서비스 클라이언트는 두 개의 정책 세트 첨부 세트를 사용합니다. 하나의 정책 세트 첨부 세트는 대상 웹 서비스 제공자와의 통신용이고, 다른 정책 세트 첨부 세트는 STS와의 통신용입니다. 대상 웹 서비스 제공자와 통신할 때 사용되는 정책 세트 및 바인딩은 웹 서비스 클라이언트에 첨부됩니다. 반대로 STS 통신을 사용하는 정책 세트 및 바인딩은 웹 서비스 클라이언트에 직접 첨부되지 않습니다. 대신, STS 통신을 사용하는 정책 세트 및 바인딩은 웹 서비스 클라이언트 바인딩 문서에서 사용자 정의 특성으로 지정됩니다. STS와 통신하기 위해 일반 바인딩 또는 애플리케이션 특정 바인딩을 사용할 수 있습니다. 일반 바인딩을 사용하여 STS에 액세스하는 방법은 직접적인 방법입니다. 사용자 정의 특성에서 일반 바인딩 이름을 지정하기만 하면 됩니다.

STS에 액세스하기 위해 애플리케이션 특정 바인딩을 구성하는 프로시저가 보다 연관성이 깊습니다. 관리 콘솔은 웹 서비스 제공자와 통신하기 위해 정책 세트 첨부를 관리하도록 설계되었습니다. 콘솔은 STS와 통신하기 위해 두 번째 정책 세트 첨부 세트를 관리하도록 설계되지 않았습니다. 그러나 관리 콘솔을 사용하여 프로시저에서 설명한 대로, STS에 액세스하기 위해 정책 세트 첨부를 관리할 수 있습니다.

관리 콘솔을 사용하여 STS에 액세스하는 데 사용되는 정책 세트를 웹 서비스 클라이언트에 첨부하고 애플리케이션 특정 바인딩을 작성 및 수정합니다. 바인딩 구성을 완료하면 웹 서비스 클라이언트에서 정책 세트 및 바인딩을 분리합니다. 이 프로시저는 다음 단계가 대상 웹 서비스 제공자에 통신에 필요한 정책 세트 및 바인딩을 첨부하는 것이기 때문에 필요합니다. 분리된 애플리케이션 특정 바인딩은 파일 시스템에서 삭제되지 않으므로 웹 서비스 클라이언트 바인딩 사용자 정의 특성은 분리된 애플리케이션 특정 바인딩을 참조할 수 있습니다.

프로시저는 기본 애플리케이션 정책 세트, Username WSHTTPS 기본값을 STS에 액세스하는 구성 단계를 설명하는 예제로 사용합니다. 또한 다른 정책 세트에 단계를 적용할 수 있습니다. 웹 서비스 애플리케이션, JaxWSServicesSamples이 이 예제에 사용됩니다. JaxWSServicesSamples는 기본적으로 설치되어 있지 않습니다.

프로시저

  1. Username WSHTTPS 기본 정책 세트를 가져오십시오. 이 예제에서는 Username WSHTTPS 기본 정책을 사용하여 프로시저를 보여주지만, 정책 세트가 외부 STS의 정책 요구사항을 만족하는 경우 다른 정책 세트를 사용하여 바인딩을 구성할 수 있습니다.
    1. 서비스 > 정책 세트 > 애플리케이션 정책 세트를 클릭하십시오.
    2. 가져오기를 클릭하십시오.
    3. 기본 저장소로부터을 선택하십시오.
    4. WSHTTPS 기본값 정책 세트를 선택하십시오.
    5. 확인을 클릭하여 정책 세트를 가져오십시오.
  2. 신뢰 클라이언트에 정책 세트를 첨부하십시오. 애플리케이션 > 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > JaxWSServicesSamples > 서비스 클라이언트 정책 세트 및 바인딩을 클릭하십시오. 정책 세트 첨부 및 분리, 신뢰 클라이언트 바인딩 구성에 속한 단계는 애플리케이션 특정 바인딩이 외부 STS에 액세스하는 데 사용되는 경우에만 필요합니다. 일반 바인딩을 사용하여 외부 STS에 액세스하는 경우에는 이러한 단계를 건너뛰고 STS와의 통신 구성을 설명하는 단계로 이동할 수 있습니다.
    1. 웹 서비스 클라이언트 자원에 대한 선택란을 선택하십시오.
    2. 클라이언트 정책 세트 첨부를 클릭하십시오.
    3. Username WSHTTPS default 정책 세트를 선택하십시오.
    대상 웹 서비스에 액세스할 애플리케이션 클라이언트에 이 정책 세트를 사용하므로 이 단계는 웹 서비스 신뢰 클라이언트에 정책 세트를 첨부합니다. 그러나 Username WSHTTPS default 정책 세트를 사용하여 외부 STS에 대신 액세스할 계획이므로 정책 세트는 일시적으로만 웹 서비스 클라이언트에 첨부됩니다. 이 단계의 목적은 관리 콘솔을 사용하여 클라이언트 바인딩 문서를 작성하거나 수정할 수 있게 하는 것입니다.
  3. 신뢰 클라이언트 바인딩을 구성하십시오.
    1. 다시 웹 서비스 클라이언트 자원을 선택하십시오.
    2. 서비스 클라이언트 정책 세트 및 바인딩 패널에서 바인딩 지정을 클릭하십시오.
    3. 애플리케이션-특성 바인딩을 작성하기 위해 새 애플리케이션 특정 바인딩을 클릭하십시오.
    4. 새 애플리케이션 특정 바인딩에 대한 바인딩 구성 이름을 지정하십시오. 이 예제에서는 바인딩 이름이 SamlTCSample입니다.
    5. 바인딩에 SSL 전송 정책 유형을 추가하십시오. 선택적으로 NodeDefaultSSLSettings 설정을 수정할 수 있습니다. 보안 > SSL 인증서 및 키 관리 > SSL 구성 > NodeDefaultSSLSettings를 클릭하십시오.
  4. 옵션: 프록시를 구성하는 경우 또는 HTTP 헤더에 추가하도록 사용자 이름 및 비밀번호를 구성하려는 경우 이전 단계를 사용하여 HTTP 전송 바인딩을 작성할 수 있습니다. HTTP 전송 바인딩을 작성하지 않으려는 경우 웹 서비스 런타임 환경은 기본 HTTP 전송 설정을 사용합니다.
  5. 바인딩에 WS-Security 정책 유형을 추가한 후 인증 설정을 수정하십시오.
    1. 애플리케이션 > 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > JaxWSServicesSamples > 서비스 클라이언트 정책 세트 및 바인딩 > SamlTCSample > 추가 > WS-Security > 인증 및 보호 > request:uname_token을 클릭하십시오.
    2. 적용을 클릭하십시오.
    3. 콜백 핸들러를 선택하십시오.
    4. 외부 STS에 웹 서비스 클라이언트를 인증할 사용자 이름 및 비밀번호를 지정하고 비밀번호를 확인하십시오.
    5. 확인을 클릭하고 저장을 클릭하십시오.
  6. 바인딩 설정이 저장된 후 서비스 클라이언트 정책 세트 및 바인딩 패널로 돌아가서 정책 세트 및 바인딩을 분리하십시오.
    1. 애플리케이션 > 애플리케이션 유형 > WebSphere 엔터프라이즈 애플리케이션 > JaxWSServicesSamples > 서비스 클라이언트 정책 세트 및 바인딩을 클릭하십시오.
    2. 웹 서비스 클라이언트 자원에 대한 선택란을 클릭하십시오.
    3. 클라이언트 정책 세트 분리를 클릭하십시오.
    이전 단계에서 작성한 애플리케이션 특정 바인딩 구성은 정책 세트가 분리될 때 파일 시스템에서 삭제되지 않습니다. 이는 작성한 애플리케이션 특정 바인딩을 사용하여 STS에 여전히 액세스할 수 있음을 의미합니다.
  7. 외부 STS에서 SSL 인증서를 가져오십시오.
    1. 보안 > SSL 인증서 및 키 관리 > 엔드포인트 보안 구성 관리 > server_or_node_endpoint > 키 저장소 및 인증서 > NodeDefaultTrustStore > 서명자 인증서를 클릭하십시오.
    2. 포트에서 검색을 클릭하십시오.
    3. 외부 STS 서버의 호스트 이름과 포트 번호를 지정하고 인증서에 별명을 지정하십시오. SSL STS 포트를 사용하십시오.
    4. 서명자 정보 검색을 클릭하십시오.
    5. 적용저장을 클릭하여 검색된 인증서를 NodeDefaultTrustStore 오브젝트에 복사하십시오.
  8. 옵션: wstrustClientBinding 구성을 추가로 수정해야 하고 wstrustClientBinding 특성이 애플리케이션 특정 바인딩을 가리키는 경우에는 웹 서비스 클라이언트에 애플리케이션 특정 바인딩을 첨부해야 수정을 완료할 수 있습니다. 첨부는 일시적입니다. 이전 단계에서 자세히 설명한 대로, 수정이 완료된 후 수정된 애플리케이션 특정 바인딩을 웹 서비스에서 분리할 수 있습니다.

결과

단계를 성공적으로 완료한 후 웹 서비스 클라이언트는 외부 STS에 요청을 전송할 준비가 되었습니다. 이 기능을 사용하기 위해 프로시저를 완료할 때 다음 조건 및 설정이 활성화됩니다.
  • SAML 토큰을 전파하는 정책 세트 및 바인딩을 첨부하십시오. 예를 들어, SAML11 Bearer WSHTTPS 기본 정책 세트 및 Saml Bearer 클라이언트 샘플 일반 바인딩을 웹 서비스 클라이언트에 첨부하십시오.
  • Username WSHTTPS 기본 정책 세트 및 애플리케이션 특정 바인딩, SamlTCSample은 Saml Bearer 클라이언트 샘플 바인딩에서 참조되며, 외부 STS에 액세스하도록 설정됩니다.
  • 외부 STS SSL 인증서를 검색하고 NodeDefaultTrustStore 신뢰 저장소에 추가했습니다.
  • 기능이 사용 가능함을 확인하기 위해 추적 설정, com.ibm.ws.wssecurity.*=all=enabled를 구성할 수 있습니다. 추적에서는 SAML 어설션이 외부 STS에 의해 실행됨을 보여줍니다. 예를 들어, 다음과 같습니다.
    [8/23/09 18:26:59:252 CDT] 0000001f TrustSecurity 3   Security Token Service response:
    [8/23/09 18:26:59:392 CDT] 0000001f TrustSecurity 3   
    <?xml version="1.0" encoding="UTF-8"?><s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" 
       xmlns:a="http://www.w3.org/2005/08/addressing" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
        <s:Header>
            <a:Action s:mustUnderstand="1">http://docs.oasis-open.org/ws-sx/ws-trust/200512/RSTRC/IssueFinal</a:Action>
            <a:RelatesTo>urn:uuid:663A7B27BA8EB2CF9D1251070029934</a:RelatesTo>
            <o:Security xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" s:mustUnderstand="1">
                <u:Timestamp u:Id="_0">
                    <u:Created>2009-08-23T23:26:57.664Z</u:Created>
                    <u:Expires>2009-08-23T23:31:57.664Z</u:Expires>
                </u:Timestamp>
            </o:Security>
        </s:Header>
        <s:Body>
          <trust:RequestSecurityTokenResponseCollection xmlns:trust="http://docs.oasis-open.org/ws-sx/ws-trust/200512">
            <trust:RequestSecurityTokenResponse>
              <trust:Lifetime>
                <wsu:Created 
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2009-08-23T23:26:57.648Z</wsu:Created>
                <wsu:Expires 
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">2009-08-24T09:26:57.648Z</wsu:Expires>
              </trust:Lifetime>
            <wsp:AppliesTo xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
              <a:EndpointReference>
                 <a:Address>https://taishan.austin.ibm.com:9443/WSSampleSei/EchoService12</a:Address>
                  </a:EndpointReference>
            </wsp:AppliesTo>
            <trust:RequestedSecurityToken>
              <saml:Assertion xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" MajorVersion="1" MinorVersion="1" 
    AssertionID="_3c656382-9916-4e5f-9a16-fe0287dfc409" Issuer="http://svt193.svt193domain.com/Trust" IssueInstant="2009-08-23T23:26:57.663Z">
              <saml:Conditions NotBefore="2009-08-23T23:26:57.648Z" NotOnOrAfter="2009-08-24T09:26:57.648Z">
              <saml:AudienceRestrictionCondition>
              <saml:Audience>https://taishan.austin.ibm.com:9443/WSSampleSei/EchoService12</saml:Audience>
              </saml:AudienceRestrictionCondition>
              </saml:Conditions>
              <saml:AuthenticationStatement AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password" 
    AuthenticationInstant="2009-08-23T23:26:57.640Z">
              <saml:Subject>
              <saml:SubjectConfirmation>
              <saml:ConfirmationMethod>urn:oasis:names:tc:SAML:1.0:cm:bearer</saml:ConfirmationMethod>
              </saml:SubjectConfirmation>
              </saml:Subject>
              </saml:AuthenticationStatement>
                <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
                <ds:SignedInfo>
                <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                <ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
                <ds:Reference URI="#_3c656382-9916-4e5f-9a16-fe0287dfc409">
                <ds:Transforms>
                <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
                <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
                </ds:Transforms>
                <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                <ds:DigestValue>YGySZX4VPv25R+oyzFpE0/T/tjs=</ds:DigestValue>
                </ds:Reference>
                </ds:SignedInfo>
                     <ds:SignatureValue>eP68...Vr08=</ds:SignatureValue>
                       <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#">
                          <X509Data>
                            <X509Certificate>MII...ymqg3</X509Certificate>
                          </X509Data>
                        </KeyInfo>
                      </ds:Signature>
                 </saml:Assertion>
             </trust:RequestedSecurityToken>
           <trust:RequestedAttachedReference>
              <o:SecurityTokenReference xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                <o:KeyIdentifier 
    ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID">_3c656382-9916-4e5f-9a16-fe0287dfc409</o:KeyIdentifier>
                </o:SecurityTokenReference>
            </trust:RequestedAttachedReference>
            <trust:RequestedUnattachedReference>
              <o:SecurityTokenReference xmlns:o="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                 <o:KeyIdentifier 
    ValueType="http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID">_3c656382-9916-4e5f-9a16-fe0287dfc409</o:KeyIdentifier>
              </o:SecurityTokenReference>
            </trust:RequestedUnattachedReference>
            <trust:TokenType>http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.1#SAMLV1.1</trust:TokenType>
            <trust:RequestType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Issue</trust:RequestType>
            <trust:KeyType>http://docs.oasis-open.org/ws-sx/ws-trust/200512/Bearer</trust:KeyType>
            </trust:RequestSecurityTokenResponse>
            </trust:RequestSecurityTokenResponseCollection>
        </s:Body>
    </s:Envelope>

다음에 수행할 작업

웹 서비스 클라이언트 및 웹 서비스 제공자 구성을 완료합니다. 자세한 정보는 SAML Bearer 토큰에 대한 클라이언트 및 제공자 바인딩을 참조하십시오.

주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_configsamlpsbindsts
파일 이름:twbs_configsamlpsbindsts.html