Creates an Network Firewall ProxyConfiguration
A Proxy Configuration defines the monitoring and protection behavior for a Proxy. The details of the behavior are defined in the rule groups that you add to your configuration.
To manage a proxy configuration's tags, use the standard Amazon Web Services resource tagging operations, ListTagsForResource, TagResource, and UntagResource.
To retrieve information about proxies, use ListProxyConfigurations and DescribeProxyConfiguration.
Parameters:
-
proxy_configuration_name
(ResourceName)
–
The descriptive name of the proxy configuration. You can't change the name of a proxy configuration after you create it.
-
description
(Optional[Description], default:
None
)
–
A description of the proxy configuration.
-
rule_group_names
(Optional[ResourceNameList], default:
None
)
–
The proxy rule group name(s) to attach to the proxy configuration.
You must specify the ARNs or the names, and you can specify both.
-
rule_group_arns
(Optional[ResourceArnList], default:
None
)
–
The proxy rule group arn(s) to attach to the proxy configuration.
You must specify the ARNs or the names, and you can specify both.
-
default_rule_phase_actions
(ProxyConfigDefaultRulePhaseActionsRequest)
–
Evaluation points in the traffic flow where rules are applied. There are three phases in a traffic where the rule match is applied.
-
tags
(Optional[TagList], default:
None
)
–
The key:value pairs to associate with the resource.
Raises:
-
InternalServerError
–
Your request is valid, but Network Firewall couldn't perform the operation because of a system problem. Retry your request.
-
InvalidRequestException
–
The operation failed because of a problem with your request. Examples include:
-
You specified an unsupported parameter name or value.
-
You tried to update a property with a value that isn't among the available types.
-
Your request references an ARN that is malformed, or corresponds to a resource that isn't valid in the context of the request.
-
LimitExceededException
–
Unable to perform the operation because doing so would violate a limit setting.
-
ResourceNotFoundException
–
Unable to locate a resource using the parameters that you provided.
-
ThrottlingException
–
Unable to process the request due to throttling limitations.
-
UnknownServiceError
–
The service returned an error code this client does not model.
Source code in docs_src/capo_network_firewall/_services/async_network_firewall.py
| async def create_proxy_configuration(
self,
proxy_configuration_name: "capo_network_firewall.types.resource_name.ResourceName",
default_rule_phase_actions: "capo_network_firewall.types.proxy_config_default_rule_phase_actions_request.ProxyConfigDefaultRulePhaseActionsRequest",
*,
config_overrides: Optional[AsyncNetworkFirewallClientConfig] = None,
description: Optional[
"capo_network_firewall.types.description.Description"
] = None,
rule_group_names: Optional[
"capo_network_firewall.types.resource_name_list.ResourceNameList"
] = None,
rule_group_arns: Optional[
"capo_network_firewall.types.resource_arn_list.ResourceArnList"
] = None,
tags: Optional["capo_network_firewall.types.tag_list.TagList"] = None,
) -> "capo_network_firewall.types.create_proxy_configuration_response.CreateProxyConfigurationResponse":
"""<p>Creates an Network Firewall <a>ProxyConfiguration</a> </p> <p>A Proxy Configuration defines the monitoring and protection behavior for a Proxy. The details of the behavior are defined in the rule groups that you add to your configuration. </p> <p>To manage a proxy configuration's tags, use the standard Amazon Web Services resource tagging operations, <a>ListTagsForResource</a>, <a>TagResource</a>, and <a>UntagResource</a>.</p> <p>To retrieve information about proxies, use <a>ListProxyConfigurations</a> and <a>DescribeProxyConfiguration</a>.</p>
Args:
proxy_configuration_name: <p>The descriptive name of the proxy configuration. You can't change the name of a proxy configuration after you create it.</p>
description: <p>A description of the proxy configuration. </p>
rule_group_names: <p>The proxy rule group name(s) to attach to the proxy configuration.</p> <p>You must specify the ARNs or the names, and you can specify both. </p>
rule_group_arns: <p>The proxy rule group arn(s) to attach to the proxy configuration.</p> <p>You must specify the ARNs or the names, and you can specify both. </p>
default_rule_phase_actions: <p>Evaluation points in the traffic flow where rules are applied. There are three phases in a traffic where the rule match is applied. </p>
tags: <p>The key:value pairs to associate with the resource.</p>
Raises:
capo_network_firewall.errors.internal_server_error.InternalServerError: <p>Your request is valid, but Network Firewall couldn't perform the operation because of a system problem. Retry your request. </p>
capo_network_firewall.errors.invalid_request_exception.InvalidRequestException: <p>The operation failed because of a problem with your request. Examples include: </p> <ul> <li> <p>You specified an unsupported parameter name or value.</p> </li> <li> <p>You tried to update a property with a value that isn't among the available types.</p> </li> <li> <p>Your request references an ARN that is malformed, or corresponds to a resource that isn't valid in the context of the request.</p> </li> </ul>
capo_network_firewall.errors.limit_exceeded_exception.LimitExceededException: <p>Unable to perform the operation because doing so would violate a limit setting. </p>
capo_network_firewall.errors.resource_not_found_exception.ResourceNotFoundException: <p>Unable to locate a resource using the parameters that you provided.</p>
capo_network_firewall.errors.throttling_exception.ThrottlingException: <p>Unable to process the request due to throttling limitations.</p>
capo_network_firewall.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_network_firewall.types.create_proxy_configuration_request.CreateProxyConfigurationRequest]",
) -> AsyncOperationResponse[
"capo_network_firewall.types.create_proxy_configuration_response.CreateProxyConfigurationResponse"
]:
import capo_network_firewall._operations.network_firewall_20201112.create_proxy_configuration
(
output,
http_response,
) = await capo_network_firewall._operations.network_firewall_20201112.create_proxy_configuration.async_create_proxy_configuration(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("CreateProxyConfiguration")
)
input_: capo_network_firewall.types.create_proxy_configuration_request.CreateProxyConfigurationRequest = {
"proxy_configuration_name": proxy_configuration_name,
"default_rule_phase_actions": default_rule_phase_actions,
}
if description is not None:
input_["description"] = description
if rule_group_names is not None:
input_["rule_group_names"] = rule_group_names
if rule_group_arns is not None:
input_["rule_group_arns"] = rule_group_arns
if tags is not None:
input_["tags"] = tags
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|