An open API service indexing awesome lists of open source software.

https://github.com/launchbynttdata/tf-aws-module_primitive-iam_role


https://github.com/launchbynttdata/tf-aws-module_primitive-iam_role

Last synced: 6 months ago
JSON representation

Awesome Lists containing this project

README

          

# tf-aws-module_primitive-iam_role

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | ~> 1.0 |
| [aws](#requirement\_aws) | ~> 5.0 |

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | 5.100.0 |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [aws_iam_role.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_role) | resource |
| [aws_iam_policy_document.assume_role](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [name](#input\_name) | The name of the IAM role. | `string` | `null` | no |
| [name\_prefix](#input\_name\_prefix) | The prefix for the IAM role name. | `string` | `null` | no |
| [tags](#input\_tags) | A map of tags to assign to the IAM role. | `map(string)` | `{}` | no |
| [assume\_role\_policy](#input\_assume\_role\_policy) | IAM assume role policy statements to include in the trust policy. |

list(object({
sid = optional(string)
effect = optional(string, "Allow")
actions = list(string)

# each statement may have multiple principal blocks
principals = optional(list(object({
type = string
identifiers = list(string)
})))

conditions = optional(list(object({
test = string # e.g., "StringEquals"
variable = string # e.g., "aws:PrincipalTag/Team"
values = list(string) # e.g., ["DevOps"]
})))
}))
| n/a | yes |
| [max\_session\_duration](#input\_max\_session\_duration) | The maximum session duration (in seconds) for the IAM role. | `number` | `3600` | no |
| [permission\_boundary\_arn](#input\_permission\_boundary\_arn) | The ARN of the policy used to set the permissions boundary for the IAM role. | `string` | `null` | no |
| [path](#input\_path) | The path for the IAM role. | `string` | `null` | no |
| [force\_detach\_policies](#input\_force\_detach\_policies) | Whether to force detachment of policies when deleting the IAM role. | `bool` | `false` | no |
| [description](#input\_description) | The description of the IAM role. | `string` | `null` | no |

## Outputs

| Name | Description |
|------|-------------|
| [role\_arn](#output\_role\_arn) | The ARN of the IAM role. |
| [role\_name](#output\_role\_name) | The name of the IAM role. |
| [role\_id](#output\_role\_id) | The unique ID of the IAM role. |
| [role\_unique\_id](#output\_role\_unique\_id) | The unique ID of the IAM role. |
| [create\_date](#output\_create\_date) | The creation date of the IAM role. |
| [role\_tags](#output\_role\_tags) | The tags applied to the IAM role. |