CreateProtectionGroup
Creates a grouping of protected resources so they can be handled as a collective. This resource grouping improves the accuracy of detection and reduces false positives.
Request Syntax
{
"Aggregation": "string
",
"Members": [ "string
" ],
"Pattern": "string
",
"ProtectionGroupId": "string
",
"ResourceType": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- Aggregation
-
Defines how AWS Shield combines resource data for the group in order to detect, mitigate, and report events.
-
Sum - Use the total traffic across the group. This is a good choice for most cases. Examples include Elastic IP addresses for EC2 instances that scale manually or automatically.
-
Mean - Use the average of the traffic across the group. This is a good choice for resources that share traffic uniformly. Examples include accelerators and load balancers.
-
Max - Use the highest traffic from each resource. This is useful for resources that don't share traffic and for resources that share that traffic in a non-uniform way. Examples include Amazon CloudFront and origin resources for CloudFront distributions.
Type: String
Valid Values:
SUM | MEAN | MAX
Required: Yes
-
- Members
-
The Amazon Resource Names (ARNs) of the resources to include in the protection group. You must set this when you set
Pattern
toARBITRARY
and you must not set it for any otherPattern
setting.Type: Array of strings
Array Members: Minimum number of 0 items. Maximum number of 10000 items.
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:aws.*
Required: No
- Pattern
-
The criteria to use to choose the protected resources for inclusion in the group. You can include all resources that have protections, provide a list of resource Amazon Resource Names (ARNs), or include all resources of a specified resource type.
Type: String
Valid Values:
ALL | ARBITRARY | BY_RESOURCE_TYPE
Required: Yes
- ProtectionGroupId
-
The name of the protection group. You use this to identify the protection group in lists and to manage the protection group, for example to update, delete, or describe it.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Pattern:
[a-zA-Z0-9\\-]*
Required: Yes
- ResourceType
-
The resource type to include in the protection group. All protected resources of this type are included in the protection group. Newly protected resources of this type are automatically added to the group. You must set this when you set
Pattern
toBY_RESOURCE_TYPE
and you must not set it for any otherPattern
setting.Type: String
Valid Values:
CLOUDFRONT_DISTRIBUTION | ROUTE_53_HOSTED_ZONE | ELASTIC_IP_ALLOCATION | CLASSIC_LOAD_BALANCER | APPLICATION_LOAD_BALANCER | GLOBAL_ACCELERATOR
Required: No
- Tags
-
One or more tag key-value pairs for the protection group.
Type: Array of Tag objects
Array Members: Minimum number of 0 items. Maximum number of 200 items.
Required: No
Response Elements
If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.
Errors
For information about the errors that are common to all actions, see Common Errors.
- InternalErrorException
-
Exception that indicates that a problem occurred with the service infrastructure. You can retry the request.
HTTP Status Code: 500
- InvalidParameterException
-
Exception that indicates that the parameters passed to the API are invalid. If available, this exception includes details in additional properties.
HTTP Status Code: 400
- LimitsExceededException
-
Exception that indicates that the operation would exceed a limit.
HTTP Status Code: 400
- OptimisticLockException
-
Exception that indicates that the resource state has been modified by another client. Retrieve the resource and then retry your request.
HTTP Status Code: 400
- ResourceAlreadyExistsException
-
Exception indicating the specified resource already exists. If available, this exception includes details in additional properties.
HTTP Status Code: 400
- ResourceNotFoundException
-
Exception indicating the specified resource does not exist. If available, this exception includes details in additional properties.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: