@@ -6,11 +6,78 @@ Terraform module that creates AWS Shield Advanced Resources
6
6
- [ Usage] ( #usage )
7
7
- [ Overview Diagrams] ( #overview-diagrams )
8
8
- [ Terraform Module] ( #terraform-module )
9
+ - [ Requirements] ( #requirements )
10
+ - [ Providers] ( #providers )
11
+ - [ Modules] ( #modules )
12
+ - [ Resources] ( #resources )
13
+ - [ Inputs] ( #inputs )
14
+ - [ Outputs] ( #outputs )
9
15
10
16
## Usage
11
17
18
+ ``` hcl
19
+ module "shield_advanced" {
20
+ source = "aws-ia/terraform-aws-shield-advanced/aws"
21
+
22
+ name = "Example protection"
23
+ resource_arn = "${local.arn_prefix}/${aws_eip.example.id}"
24
+
25
+ protection_group_config = [
26
+ {
27
+ id = "Arbitrary Resource"
28
+ aggregation = "MEAN"
29
+ pattern = "ARBITRARY"
30
+ members = "${local.arn_prefix}/${aws_eip.example.id}"
31
+ },
32
+ {
33
+ id = "All Resources"
34
+ aggregation = "MEAN"
35
+ pattern = "ALL"
36
+ },
37
+ {
38
+ id = "CloudFront Resource"
39
+ aggregation = "SUM"
40
+ pattern = "BY_RESOURCE_TYPE"
41
+ resource_type = "CLOUDFRONT_DISTRIBUTION"
42
+ },
43
+ {
44
+ id = "Route53 Resource"
45
+ aggregation = "MAX"
46
+ pattern = "BY_RESOURCE_TYPE"
47
+ resource_type = "ROUTE_53_HOSTED_ZONE"
48
+ },
49
+ {
50
+ id = "GlobalAccelerator Resource"
51
+ aggregation = "SUM"
52
+ pattern = "BY_RESOURCE_TYPE"
53
+ resource_type = "GLOBAL_ACCELERATOR"
54
+ },
55
+ {
56
+ id = "ALB Resource"
57
+ aggregation = "MEAN"
58
+ pattern = "BY_RESOURCE_TYPE"
59
+ resource_type = "APPLICATION_LOAD_BALANCER"
60
+ },
61
+ {
62
+ id = "CLB Resource"
63
+ aggregation = "MEAN"
64
+ pattern = "BY_RESOURCE_TYPE"
65
+ resource_type = "CLASSIC_LOAD_BALANCER"
66
+ },
67
+ {
68
+ id = "ElasticIP Resource"
69
+ aggregation = "SUM"
70
+ pattern = "BY_RESOURCE_TYPE"
71
+ resource_type = "ELASTIC_IP_ALLOCATION"
72
+ },
73
+ ]
74
+ }
75
+ ```
76
+
12
77
## Overview Diagrams
13
78
79
+ ![ shield-diagram] ( ./docs/Architectures-ShieldAdvanced.png )
80
+
14
81
## Terraform Module
15
82
16
83
### Requirements
0 commit comments