Copyright | (c) 2013-2021 Brendan Hay |
---|---|
License | Mozilla Public License, v. 2.0. |
Maintainer | Brendan Hay <brendan.g.hay+amazonka@gmail.com> |
Stability | auto-generated |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Enables Shield Advanced for a specific Amazon Web Services resource. The resource can be an Amazon CloudFront distribution, Elastic Load Balancing load balancer, Global Accelerator accelerator, Elastic IP Address, or an Amazon Route 53 hosted zone.
You can add protection to only a single resource with each CreateProtection request. If you want to add protection to multiple resources at once, use the WAF console. For more information see Getting Started with Shield Advanced and Add Shield Advanced Protection to more 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.
$sel:name:CreateProtection'
, createProtection_name
- Friendly name for the Protection
you are creating.
$sel:resourceArn: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 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 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.