Provides an IAM role policy.
resource "aws_iam_role_policy" "test_policy" {
name = "test_policy"
role = "${aws_iam_role.test_role.id}"
policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"ec2:Describe*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
EOF
}
resource "aws_iam_role" "test_role" {
name = "test_role"
assume_role_policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
EOF
}
The following arguments are supported:
name - (Optional) The name of the role policy. If omitted, Terraform will assign a random, unique name. name_prefix - (Optional) Creates a unique name beginning with the specified prefix. Conflicts with name. policy - (Required) The policy document. This is a JSON formatted string. The heredoc syntax or file function is helpful here. role - (Required) The IAM role to attach to the policy. id - The role policy ID, in the form of role_name:role_policy_name. name - The name of the policy. policy - The policy document attached to the role. role - The name of the role associated with the policy. IAM Role Policies can be imported using the role_name:role_policy_name, e.g.
$ terraform import aws_iam_role_policy.mypolicy role_of_mypolicy_name:mypolicy_name
© 2018 HashiCorpLicensed under the MPL 2.0 License.
https://www.terraform.io/docs/providers/aws/r/iam_role_policy.html