Copyright | (c) 2013-2023 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Amazon Route 53 hosted zone, Global Accelerator standard accelerator, Elastic IP Address, Application Load Balancer, or a Classic Load Balancer. You can protect Amazon EC2 instances and Network Load Balancers by association with protected Amazon EC2 Elastic IP addresses.
You can add protection to only a single resource with each
CreateProtection
request. You can add protection to multiple resources
at once through the Shield Advanced console at
https://console.aws.amazon.com/wafv2/shieldv2#/. For more information
see
Getting Started with Shield Advanced
and
Adding Shield Advanced protection to Amazon Web Services resources.
Synopsis
- data CreateProtection = CreateProtection' {}
- newCreateProtection :: Text -> Text -> CreateProtection
- createProtection_tags :: Lens' CreateProtection (Maybe [Tag])
- createProtection_name :: Lens' CreateProtection Text
- createProtection_resourceArn :: Lens' CreateProtection Text
- data CreateProtectionResponse = CreateProtectionResponse' {
- protectionId :: Maybe Text
- httpStatus :: Int
- newCreateProtectionResponse :: Int -> CreateProtectionResponse
- createProtectionResponse_protectionId :: Lens' CreateProtectionResponse (Maybe Text)
- createProtectionResponse_httpStatus :: Lens' CreateProtectionResponse Int
Creating a Request
data CreateProtection Source #
See: newCreateProtection
smart constructor.
CreateProtection' | |
|
Instances
Create a value of CreateProtection
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:tags:CreateProtection'
, createProtection_tags
- One or more tag key-value pairs for the Protection object that is
created.
CreateProtection
, createProtection_name
- Friendly name for the Protection
you are creating.
CreateProtection
, createProtection_resourceArn
- The ARN (Amazon Resource Name) of the resource to be protected.
The ARN should be in one of the following formats:
- For an Application Load Balancer:
arn:aws:elasticloadbalancing:
region
:
account-id
:loadbalancer/app/
load-balancer-name
/
load-balancer-id
- For an Elastic Load Balancer (Classic Load Balancer):
arn:aws:elasticloadbalancing:
region
:
account-id
:loadbalancer/
load-balancer-name
- For an Amazon CloudFront distribution:
arn:aws:cloudfront::
account-id
:distribution/
distribution-id
- For an Global Accelerator standard accelerator:
arn:aws:globalaccelerator::
account-id
:accelerator/
accelerator-id
- For Amazon Route 53:
arn:aws:route53:::hostedzone/
hosted-zone-id
- For an Elastic IP address:
arn:aws:ec2:
region
:
account-id
:eip-allocation/
allocation-id
Request Lenses
createProtection_tags :: Lens' CreateProtection (Maybe [Tag]) Source #
One or more tag key-value pairs for the Protection object that is created.
createProtection_name :: Lens' CreateProtection Text Source #
Friendly name for the Protection
you are creating.
createProtection_resourceArn :: Lens' CreateProtection Text Source #
The ARN (Amazon Resource Name) of the resource to be protected.
The ARN should be in one of the following formats:
- For an Application Load Balancer:
arn:aws:elasticloadbalancing:
region
:
account-id
:loadbalancer/app/
load-balancer-name
/
load-balancer-id
- For an Elastic Load Balancer (Classic Load Balancer):
arn:aws:elasticloadbalancing:
region
:
account-id
:loadbalancer/
load-balancer-name
- For an Amazon CloudFront distribution:
arn:aws:cloudfront::
account-id
:distribution/
distribution-id
- For an Global Accelerator standard accelerator:
arn:aws:globalaccelerator::
account-id
:accelerator/
accelerator-id
- For Amazon Route 53:
arn:aws:route53:::hostedzone/
hosted-zone-id
- For an Elastic IP address:
arn:aws:ec2:
region
:
account-id
:eip-allocation/
allocation-id
Destructuring the Response
data CreateProtectionResponse Source #
See: newCreateProtectionResponse
smart constructor.
CreateProtectionResponse' | |
|
Instances
newCreateProtectionResponse Source #
Create a value of CreateProtectionResponse
with all optional fields omitted.
Use generic-lens or optics to modify other optional fields.
The following record fields are available, with the corresponding lenses provided for backwards compatibility:
$sel:protectionId:CreateProtectionResponse'
, createProtectionResponse_protectionId
- The unique identifier (ID) for the Protection object that is created.
$sel:httpStatus:CreateProtectionResponse'
, createProtectionResponse_httpStatus
- The response's http status code.
Response Lenses
createProtectionResponse_protectionId :: Lens' CreateProtectionResponse (Maybe Text) Source #
The unique identifier (ID) for the Protection object that is created.
createProtectionResponse_httpStatus :: Lens' CreateProtectionResponse Int Source #
The response's http status code.