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
- Host: GitHub
- URL: https://github.com/launchbynttdata/tf-aws-module_primitive-iam_role
- Owner: launchbynttdata
- License: apache-2.0
- Created: 2025-10-23T14:38:03.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2025-11-18T19:04:05.000Z (8 months ago)
- Last Synced: 2025-11-18T20:22:38.539Z (8 months ago)
- Language: Go
- Size: 357 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
- Notice: NOTICE
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. |