웹 서비스 제공자 및 정책 구성 공유

WebSphere® Application Server 서비스 제공자는 WSDL(Web Service Description Language)을 통해 현재 정책 구성을 공유할 수 있습니다. 정책 구성은 웹 서비스 정책(WS-Policy) 스펙을 지원하는 다른 클라이언트, 서비스 레지스트리 또는 서비스와 공유할 수 있도록 표준 WSDL WS-PolicyAttachment 형식으로 되어 있습니다.

다음과 같은 방법으로 JAX-WS(Java™ API for XML-Based Web Services) 서비스 엔드포인트의 정책 구성을 공유 가능하도록 설정할 수 있습니다.
  • 서비스 제공자의 정책 구성을 WSDL에 포함하십시오. 그러면 WSDL은 공개 가능하거나 HTTP GET 요청을 사용하여 얻을 수 있습니다.
  • 서비스 제공자의 정책 구성이 WSDL에 포함되고 WS-MetadataExchange GetMetadata 요청에 사용 가능하도록 웹 서비스 메타데이터 교환(WS-MetadataExchange) 프로토콜을 사용으로 설정하십시오. WS-MetadataExchange 프로토콜 사용의 장점은 적합한 시스템 정책 세트를 사용하여 WS-MetadataExchange GetMetadata 요청에 메시지 레벨 보안을 적용할 수 있다는 점입니다.

시스템 관리자는 관리 콘솔이나 관리 명령을 사용하여 .zip 파일 확장자가 있는 공개된 압축 파일을 통해 WSDL 문서에 액세스할 수 있습니다. 그러나 압축된 파일에 공개된 정적 WSDL 문서는 WS-Addressing 어노테이션과 같은 애플리케이션 코드에 존재할 수도 있는 배치 디스크립터 요소, 어노테이션 또는 웹 서비스 기능을 고려할 수 없게 되므로 이 방식으로 얻은 WSDL 문서는 HTTP GET 요청을 사용하거나 WS-MetadataExchange 프로토콜을 통해 얻은 WSDL 문서와 다를 수 있습니다.

기본적으로 정책 공유는 해제되어 있습니다. 서비스 제공자의 정책 구성을 WSDL에 포함시키고 공유 방법을 지정하려면 관리 콘솔 또는 wsadmin 명령을 사용하면 됩니다.

정책 공유가 설정된 경우 WSDL에 이전에 있던 WS-Policy 첨부 파일이 제거됩니다. 정책 구성 정보가 WSDL에서 공개 가능하게 되지만, 관리 콘솔에서 직접 WSDL 문서를 보거나 관리 에이전트를 사용하여 원격으로 WSDL 문서를 공개하는 경우에는 사용할 수 없습니다.

서비스 제공자 애플리케이션이 다중 파트 WSDL을 사용하는 경우 모든 WSDL은 웹 서비스 애플리케이션에 로컬이어야 합니다. 다중 파트 WSDL에 대한 자세한 정보는 WSDL에 대한 주제를 참조하십시오.

SAML(Security Assertion Markup Language)을 사용하도록 구성된 서비스 제공자는 WebSphere Application Server 클라이언트 또는 서비스 레지스트리가 사용하도록 정책을 공유할 수 있습니다. SAML 토큰은 독점 형식으로 공개되어 있습니다.

애플리케이션 개발자는 웹 서비스 생성 시 Rational® Application Developer 도구를 사용하여 서비스 제공자가 정책 구성을 공유하도록 지정하고 공유 방법을 지정할 수 있습니다. 자세한 정보는 Rational Application Developer 문서를 참조하십시오.

HTTP, SSL 및 JMS 등과 같은 전송 정책을 WS-PolicyAttachment 형식으로 표현할 수 없으므로 전송 정책 정보는 정책 구성에 포함되지 않습니다.

예를 들어, WS-Trust 서비스에 액세스하기 위한 정책 등과 같은 부트스트랩 정책 정보는 부트스트랩 정책이 공개 가능한 표준 WS-PolicyAttachment 형식으로 표현된 경우 정책 구성에 포함될 수 있습니다.

애플리케이션 또는 서비스 레벨에서 정책 구성을 공유하도록 서비스 제공자를 구성할 수 있습니다. 이전 레벨에서 첨부한 정책 세트에 표시된 정책 구성도 공유됩니다. 이전 레벨에서 첨부된 정책 세트가 나중 레벨에 첨부된 정책 세트 구성을 대체합니다.

정책 정보는 여러 가지 방법으로 정의할 수 있습니다. 다음 목록은 우선순위의 내림차순입니다. 예를 들어, 배치 디스크립터 메소드는 애플리케이션 코드에서 어노테이션 또는 기능의 사용을 대체하지만, 정책 세트 사용으로 대체되기도 합니다.
  • 정책 세트를 애플리케이션에 첨부하여 정책이 정의됩니다.
  • port-component-ref 요소 내에서 배치 디스크립터 요소를 사용하여 정책이 정의됩니다.
  • 애플리케이션 코드에서 어노테이션 또는 기능을 사용하여 정책이 정의됩니다.
  • 애플리케이션에 패키지된 WSDL 문서의 WS-Policy 첨부 파일을 사용하여 정책이 정의됩니다.

애플리케이션이 셀에 배치되고 사용자가 관리 콘솔을 사용하여 WSDL을 공개하면 WSDL에는 셀의 배치 관리자의 정책 세트 구성이 들어 있습니다. 정책 세트를 변경하면 변경사항은 해당 구성이 새로 고쳐지기 전까지는 배치 관리자의 구성에 영향을 미치지 않습니다. 예를 들어, 배치 관리자가 다시 시작되거나 스크립트 명령이 배치 관리자의 정책 세트 구성을 새로 고치는 경우입니다.

다음 정보에서 정책 구성의 공개 방법을 관리하는 규칙을 표시합니다.
  • 정책 공유를 사용할 경우 WSDL의 WS-Policy 첨부 파일에서 서비스의 정책 구성을 설명합니다.
  • 정책 공유가 사용으로 설정되지 않은 경우
    • HTTP GET 요청에서 리턴되는 WSDL이 애플리케이션에 패키지된 WSDL입니다.
      참고: 그런 WSDL은 수정되지 않은 채 리턴되므로 서비스 구성과 일치하지 않는 기존 WS-Policy 첨부 파일이 포함되어 있을 수 있습니다.
    • 서비스와 연관된 특정 WSDL 문서가 없을 경우 서버 런타임에서 자동으로 WSDL 문서를 생성하여 서비스와 연관시킵니다. 이 경우 서비스 구현에 @Addressing 어노테이션이 없다면 WSDL에 WS-Policy 첨부 파일이 포함되지 않습니다. 이 경우 @Addressing 어노테이션 구성이 생성된 WSDL의 WS-Policy 첨부 파일에 표시됩니다.

정책 구성 공유 문제점 해결

구성을 표준 WS-PolicyAttachments 형식으로 표현할 수 없으므로 서비스 제공자가 정책 구성을 공유하지 못할 수도 있습니다. 한 가지 이유는 특정 첨부 지점에 여러 개의 호환되지 않는 정책이 정의되어 있기 때문일 수 있습니다. 또 다른 이유는 표준 정책을 생성하는 데 충분한 바인딩 정보가 없기 때문일 수 있습니다. 정책 구성에는 예를 들어, WS-Trust 서비스 액세스 정책 등과 같은 부트스트랩 정책이 포함될 수 있으므로 부트스트랩 정책도 WS-PolicyAttachments 형식으로 표현해야 합니다.

정책 구성을 공유할 수 없는 경우 문제점을 설명하는 오류가 서비스 제공자 오류 로그에 쓰여지고 다음 정책이 서비스 제공자의 WSDL에 첨부됩니다.
<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
이 정책은 클라이언트에게 서비스에 승인 가능한 정책 구성이 없음을 알립니다. WSDL의 다른 측면은 영향을 받지 않습니다.

주제 유형을 표시하는 아이콘 개념 주제



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