Network Deployment (Distributed operating systems), v8.0 > Reference > Commands (wsadmin scripting)
setClientDynamicPolicyControl command
Use the setClientDynamicPolicyControl command to set how an application that is a web services client obtains the policy configuration of a web services provider. We can set, refresh, or remove this information about how a provider policy is obtained.
To run the command, use the AdminTask object of the wsadmin scripting client.
This command is valid only when it is used with WAS v7 and later application servers. Do not use it with earlier versions.
For a list of the available policy set management administrative commands, plus a brief description of each command, run at the wsadmin prompt:
print AdminTask.help('PolicySetManagement')
For overview help on a given command, run at the wsadmin prompt:
print AdminTask.help('command_name')
After using the command, save changes to the master configuration. For example, use the following command:
AdminConfig.save()
Use the setClientDynamicPolicyControl command to set how a client obtains the policy configuration of a service provider.
The client can obtain the policy configuration of the provider through a Web Services Metadata Exchange (WS-MetadataExchange) request or through an HTTP GET request. The service provider must publish its policy in WS-PolicyAttachment format in its WSDL and the client must be able to support those provider policies.
At run time, the client uses the information to establish a policy configuration acceptable to both the client and the service provider.
Target object
An application or service that is a web services client.
Required parameters
-applicationName
The name of the application for which to obtain the policy configuration of the provider. (String)
-resource
The name of the resource for which to obtain the policy configuration of the provider. For all resources in an application, specify WebService:/. Alternatively, you can specify a service or service reference.
See the Configure the client.policy to use a service provider policy using wsadmin.sh topic for further details.
Optional parameters
-acquireProviderPolicyMethod
Specifies how the policy configuration of the provider can be obtained. (String) Enter one of the following values:
httpGet
Obtain the policy configuration of the provider by using an HTTP GET request. By default, the HTTP GET request is targeted at the URL for each service endpoint followed by ?WSDL. If you specify a service for the resource parameter, and to specify a different location for the policy configuration of the provider, you can use the httpGetProperties parameter to change the target of the request.
By default, the HTTP GET request uses the same HTTP and SSL transport policies as the application request. If you use the httpGetProperties parameter to change the target of the request, and to specify different HTTP and SSL transport policies for the request, you can specify the system policy set and general binding that contains the HTTP and SSL transport policies you require.
wsMex
Obtain the policy configuration of the provider by using a WS-MetadataExchange request. By default, the WS-MetadataExchange request inherits the policy set and binding configuration from the application. We can specify the system policy set and general binding that contains the WS-Security policies you require.
-wsMexProperties
Specifies that message-level security is required for WS-MetadataExchange requests and specifies the settings that provide the message-level security. (Properties) Enter the following values, following each value with the setting that you require for that value:
wsMexPolicySetName
The name of the system policy set that specifies message-level security for a WS-MetadataExchange request. Specify a system policy set that contains only WS-Security policies, only WS-Addressing policies, or both.
wsMexPolicySetBinding
The name of the general binding for the policy set attachment for a WS-MetadataExchange request. Specify a general binding that is scoped to the global domain, or scoped to the security domain of this service. If you do not specify this property, the default binding is used. This value is valid only when you specify the wsMexPolicySetName value.
This parameter is valid only when you specify wsMex for the acquireProviderPolicyMethod parameter.
-httpGetProperties
Target for acquiring provider policy by using an HTTP GET request if the provider policy is at a different location from the target endpoint. Optionally specifies the system policy set and general binding that contains the HTTP and SSL transport policies you require. (Properties) Enter the following values, followed by the setting that you require for each value:
httpGetTargetURI
The URL for the location of the provider policy. For example, the location might refer to policy held in a registry.
httpGetPolicySetName
The name of the system policy set that contains the HTTP and SSL transport policy to use for the HTTP GET request. If the specified system policy set contains policy types other than HTTP and SSL transport, these additional policy types are ignored. This value is valid only when you specify the httpGetTargetURI value.
httpGetPolicySetBinding
The name of the general binding that contains the HTTP and SSL transport bindings for the HTTP GET request. If you do not specify this property, the default binding is used. This value is valid only when you specify the httpGetPolicySetName value.
This parameter is valid only when you specify httpGet for the acquireProviderPolicyMethod parameter and the resource is a service. Do not use this parameter if the resource is an application.
-remove
Whether to remove the information about how the client obtains the policy configuration of the provider. (Boolean) This parameter takes the following values:
true
Information about how the client obtains the policy configuration of the provider is removed.
false
This value is the default. Information about how the client obtains the policy configuration of the provider is not removed.
Example
The following example removes the information about how the client obtains the policy configuration of the provider from the EchoService service of the WSPolicyClient client application.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient -resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService -remove true]')The following example configures the EchoService service of the WSPolicyClient client application to obtain the policy configuration of the provider by using an HTTP GET request.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient -resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService -acquireProviderPolicyMethod [httpGet ] -httpGetProperties [httpGetTargetURI http://example_path]]')The following example configures the EchoService service of the WSPolicyClient client application to obtain the policy configuration of the provider by using an HTTP GET request. The request uses the HTTP and SSL transport policies contained in the SystemWSSecurityDefault policy set and the "Client sample" general binding.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient -resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService -acquireProviderPolicyMethod [httpGet ] -httpGetProperties [ [httpGetTargetURI http://example_path] [httpGetPolicySetName SystemWSSecurityDefault] [httpGetPolicySetBinding [Client sample]] ]]')The following example configures the EchoService service of the WSPolicyClient client application to obtain the policy configuration of the provider through a WS-MetadataExchange request with message-level security, by using the SystemWSSecurityDefault policy set and the "Client sample" general binding.
AdminTask.setClientDynamicPolicyControl('[-applicationName WSPolicyClient -resource WebService:/WSPolicyClient.war:{http://example_path/}EchoService -acquireProviderPolicyMethod [wsMex ] -wsMexProperties [ [wsMexPolicySetName [SystemWSSecurityDefault]] [wsMexPolicySetBinding [Client sample]] ]]')
Configure the client.policy to use a service provider policy using wsadmin.sh
Create policy sets using wsadmin.sh
Configure general, cell-wide bindings for policies using wsadmin.sh
Use the wsadmin scripting AdminTask object for scripted administration
Start the wsadmin scripting client using wsadmin.sh
Related
getProviderPolicySharingInfo command
setProviderPolicySharingInfo command
getClientDynamicPolicyControl command
WS-Policy commands