setClientDynamicPolicyControl 명령
웹 서비스 클라이언트인 애플리케이션이 웹 서비스 제공자의 정책 구성을 획득하는 방법을 설정하기 위해 setClientDynamicPolicyControl 명령을 사용하십시오. 제공자 정책을 획득하는 방법에 대한 이러한 정보를 설정, 새로 고침 또는 제거할 수 있습니다.
이 명령을 실행하려면 wsadmin 스크립트 클라이언트의 AdminTask 오브젝트를 사용하십시오.
wsadmin 스크립트 클라이언트는
Qshell에서 실행됩니다. 자세한 정보는 "Qshell을 구성하여
WebSphere® Application Server 스크립트 실행" 주제를 참조하십시오.
이 명령은 WebSphere Application Server 버전 7 이상 애플리케이션 서버에서 사용될 때만 유효합니다. 이전 버전에서는 사용하지 마십시오.
print AdminTask.help('PolicySetManagement')
print AdminTask.help('command_name')
AdminConfig.save()
목적
서비스 제공자의 정책 구성을 획득하는 방법을 설정하기 위해 setClientDynamicPolicyControl 명령을 사용하십시오.
클라이언트는 WS-MetadataExchange(Web Services Metadata Exchange) 요청을 통하여 또는 HTTP GET 요청을 통하여 제공자의 정책 구성을 획득할 수 있습니다. 서비스 제공자는 해당 정책을 WSDL(Web Services Description Language)로 된 WS-PolicyAttachment 형식으로 공개해야 하고 클라이언트는 이러한 제공자 정책을 지원할 수 있어야 합니다.
런타임 시, 클라이언트는 클라이언트와 서비스 제공자 모두에 대해 승인 가능한 정책 구성을 확립하기 위해 정보를 사용합니다.
대상 오브젝트
웹 서비스 클라이언트인 애플리케이션 또는 서비스.
필수 매개변수
- -applicationName
- 제공자의 정책 구성을 획득하려는 애플리케이션의 이름. (문자열).
- -resource
- 제공자의 정책 구성을 획득하려는 자원의 이름. 애플리케이션의 모든 자원에 대해 WebService:/를 지정하십시오. 그렇지 않으면, 서비스 또는 서비스 참조를 지정할 수 있습니다. .
- 추가 세부사항은 wsadmin 스크립트를 사용하여 서비스 제공자 정책을 사용하도록 클라이언트 정책 구성 주제를 참조하십시오.
선택적 매개변수
- -acquireProviderPolicyMethod
- 제공자의 정책 구성을 획득할 수 있는 방법을 지정합니다. (문자열).다음 값 중 하나를 입력하십시오.
- httpGet
- HTTP GET 요청을 사용하여 제공자의 정책 구성을 획득합니다.
기본적으로, HTTP GET 요청은 ?WSDL이 뒤에 오는 각 서비스 엔드포인트에 대해 URL에서 대상으로 지정됩니다. resource 매개변수에 대한 서비스를 지정하고 제공자의 정책 구성에 대한 다른 위치를 지정하려는 경우, 요청의 대상을 변경하기 위해 httpGetProperties 매개변수를 사용할 수 있습니다.
기본적으로, HTTP GET 요청은 애플리케이션 요청으로 동일한 HTTP 및 SSL 전송 정책을 사용합니다. 요청의 대상을 변경하기 위해 httpGetProperties 매개변수를 사용하고 요청에 대해 다른 HTTP 및 SSL 전송 정책을 사용하려는 경우, 요청하는 HTTP 및 SSL 전송 정책을 포함하는 시스템 정책 세트 및 일반 바인딩을 지정할 수 있습니다.
- wsMex
- WS-MetadataExchange 요청을 사용하여 제공자의 정책 구성을 획득합니다.
기본적으로, WS-MetadataExchange 요청은 애플리케이션에서 정책 세트 및 바인딩 구성을 상속합니다. 요구하는 WS-Security 정책을 포함하는 시스템 정책 세트 및 일반 바인딩을 지정할 수 있습니다.
- -wsMexProperties
- 메시지 레벨 보안이 WS-MetadataExchange 요청에 필요한지 지정하고
메시지 레벨 보안을 제공하는 설정을 지정합니다. (특성)해당 값을 요구하는 설정을 가진 각 값을 따르면서 다음의 값을 입력하십시오.
- wsMexPolicySetName
- WS-MetadataExchange 요청에 대한 메시지 레벨 보안을 지정하는 시스템 정책 세트의 이름. 유일한 WS-Security 정책 또는 유일한 WS-Addressing 정책 또는 둘 다를 포함하는 시스템 정책 세트를 지정하십시오.
- wsMexPolicySetBinding
- WS-MetadataExchange 요청에 대한 정책 세트 첨부의 일반 바인딩 이름. 글로벌 도메인으로 범위 지정되거나 이 서비스의 보안 도메인으로 범위 지정되는 일반 바인딩을 지정하십시오. 이 특성을 지정하지 않으면
기본 바인딩이 사용됩니다.
이 값은 wsMexPolicySetName 값을 지정할 때만 올바릅니다.
이 매개변수는 sharePolicyMethods 매개변수에 대해 wsMex를 지정할 때에만 올바릅니다.
- -httpGetProperties
- 제공자 정책이 대상 엔드포인트로부터 다른 위치에 있는 경우 HTTP GET 요청을 사용하여 확보한 제공자 정책에 대한 대상을 지정합니다.
요구하는 HTTP 및 SSL 전송 정책을 포함하는 시스템 정책 세트 및 일반 바인딩을 선택적으로 지정합니다.
(특성)각 값에 요구하는 설정이 뒤에 오는, 다음의 값을 입력하십시오.
- httpGetTargetURI
- 제공자 정책의 위치에 대한 URL. 예를 들어, 위치는 레지스트리에서 보유한 정책을 참조할 수도 있습니다.
- httpGetPolicySetName
- HTTP GET 요청에 사용하는 HTTP 및 SSL 전송 정책을 포함하는 시스템 정책 세트의 이름. 지정된 시스템 정책 세트가 HTTP 및 SSL 전송 이외의 정책 유형을 포함하는 경우,
이러한 추가 정책 유형은 무시됩니다.
이 값은 httpGetTargetURI 값을 지정할 때만 올바릅니다.
- httpGetPolicySetBinding
- HTTP GET 요청에 대한 HTTP 및 SSL 전송 바인딩을 포함하는 일반 바인딩의 이름. 이 특성을 지정하지 않으면
기본 바인딩이 사용됩니다.
이 값은 httpGetPolicySetName 값을 지정할 때만 올바릅니다.
이 매개변수는 sharePolicyMethods 매개변수에 대해 httpGet를 지정하고 자원이 서비스인 경우에만 올바릅니다. 자원이 애플리케이션인 경우 이 매개변수를 사용하지 마십시오.
- -remove
- 클라이언트가 제공자의 정책 구성을 획득하는 방법에 대한 정보의 제거 여부를 지정합니다. (부울)이 매개변수는 다음 값을 사용합니다.
- true
- 클라이언트가 제공자의 정책 구성을 획득하는 방법에 대한 정보를 제거합니다.
- false
- 이 값이 기본값입니다. 클라이언트가 제공자의 정책 구성을 획득하는 방법에 대한 정보를 제거하지 않습니다.
예제
다음 예제에서는 WSPolicyClient 클라이언트 애플리케이션의 EchoService 서비스로부터 클라이언트가 제공자의 정책 구성을 획득하는 방법에 대한 정보를 제거합니다.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient
-resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService
-remove true]')
다음 예제에서는 HTTP GET 요청을 사용하여 제공자의 정책 구성을 획득하는 WSPolicyClient 클라이언트 애플리케이션의 EchoService 서비스를 구성합니다.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient
-resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService
-acquireProviderPolicyMethod [httpGet ]
-httpGetProperties [httpGetTargetURI http://example_path]]')
다음 예제에서는 HTTP GET 요청을 사용하여 제공자의 정책 구성을 획득하는 WSPolicyClient 클라이언트 애플리케이션의 EchoService 서비스를 구성합니다. 요청은 SystemWSSecurityDefault 정책 세트 및 "클라이언트 예제" 일반 바인딩에 포함되는 HTTP 및 SSL 전송 정책을 사용합니다.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient
-resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService
-acquireProviderPolicyMethod [httpGet ]
-httpGetProperties [ [httpGetTargetURI http://example_path]
[httpGetPolicySetName SystemWSSecurityDefault]
[httpGetPolicySetBinding [Client sample]] ]]')
다음 예제에서는 SystemWSSecurityDefault 정책 세트 및 "클라이언트 예제" 일반 바인딩을 사용하여 메시지 레벨 보안을 가진 WS-MetadataExchange 요청을 통해 제공자의 정책 구성을 획득하는 WSPolicyClient 클라이언트 애플리케이션의 EchoService 서비스를 구성합니다.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient
-resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService
-acquireProviderPolicyMethod [wsMex ]
-wsMexProperties [ [wsMexPolicySetName [SystemWSSecurityDefault]]
[wsMexPolicySetBinding [Client sample]] ]]')