-
-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathmain.tf
66 lines (56 loc) · 1.85 KB
/
main.tf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
data "aws_region" "default" {}
data "aws_caller_identity" "default" {}
locals {
region = var.region == "" ? data.aws_region.default.name : var.region
account_id = var.account_id == "" ? data.aws_caller_identity.default.account_id : var.account_id
# Normalise the parameter name, and remove any duplicate slashes
parameter_root_name = join("/", compact(split("/", var.parameter_root_name)))
# If no KMS arn supplied, allow access to any KMS
kms_key = var.kms_key == "" ? "*" : var.kms_key
}
data "aws_iam_policy_document" "read_parameter_store" {
statement {
actions = ["ssm:GetParameters", "ssm:GetParameter", "ssm:GetParameterHistory", "ssm:GetParametersByPath"]
resources = ["arn:aws:ssm:${local.region}:${local.account_id}:parameter/${local.parameter_root_name}*"]
}
}
data "aws_iam_policy_document" "write_parameter_store" {
statement {
actions = ["ssm:PutParameters", "ssm:PutParameter"]
resources = ["arn:aws:ssm:${local.region}:${local.account_id}:parameter/${local.parameter_root_name}*"]
}
}
data "aws_iam_policy_document" "manage_parameter_store" {
statement {
actions = [
"ssm:PutParameters",
"ssm:PutParameter",
"ssm:DeleteParameter",
"ssm:DeleteParameters",
"ssm:GetParameters",
"ssm:GetParameter",
"ssm:GetParameterHistory",
"ssm:GetParametersByPath",
]
resources = ["arn:aws:ssm:${local.region}:${local.account_id}:parameter/${local.parameter_root_name}*"]
}
}
data "aws_iam_policy_document" "put_xray_trace" {
statement {
actions = ["xray:PutTraceSegments", "xray:PutTelemetryRecords"]
resources = ["*"]
}
}
data "aws_iam_policy_document" "manage_kms_store" {
statement {
actions = [
"kms:ListKeys",
"kms:ListAliases",
"kms:Describe*",
"kms:Decrypt",
]
resources = [
"${local.kms_key}",
]
}
}