Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/flaconi/terraform-aws-iam-user

Terraform module for IAM user
https://github.com/flaconi/terraform-aws-iam-user

aws terraform terraform-module

Last synced: about 4 hours ago
JSON representation

Terraform module for IAM user

Awesome Lists containing this project

README

        

# AWS IAM User

[![Lint Status](https://github.com/Flaconi/terraform-aws-iam-user/actions/workflows/linting.yml/badge.svg?branch=master)](https://github.com/Flaconi/terraform-aws-iam-user/actions/workflows/linting.yml)
[![Docs Status](https://github.com/Flaconi/terraform-aws-iam-user/actions/workflows/terraform-docs.yml/badge.svg?branch=master)](https://github.com/Flaconi/terraform-aws-iam-user/actions/workflows/terraform-docs.yml)
[![Tag](https://img.shields.io/github/tag/Flaconi/terraform-aws-iam-user.svg)](https://github.com/Flaconi/terraform-aws-iam-user/releases)
[![license](http://img.shields.io/badge/license-MIT-brightgreen.svg)](http://opensource.org/licenses/MIT)

Terraform module that provides an IAM User and optionally attaches it to inline defined policies, custom created policies and/or existing policiy ARN's

## Examples

Check the [examples](examples) directory.

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.12.26 |
| [aws](#requirement\_aws) | >= 3 |

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | >= 3 |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [aws_iam_access_key.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_access_key) | resource |
| [aws_iam_policy.this_custom](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_policy) | resource |
| [aws_iam_user.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_user) | resource |
| [aws_iam_user_policy.this_inline](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_user_policy) | resource |
| [aws_iam_user_policy_attachment.this_arn](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_user_policy_attachment) | resource |
| [aws_iam_user_policy_attachment.this_custom](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/iam_user_policy_attachment) | resource |
| [aws_iam_policy_document.this_custom](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |
| [aws_iam_policy_document.this_inline](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) | Name of the IAM user | `string` | n/a | yes |
| [attach\_policy\_arns](#input\_attach\_policy\_arns) | Existing policy ARNs to attach to the IAM user | `list(string)` | `[]` | no |
| [custom\_policies](#input\_custom\_policies) | Custom policies to create and attach to the IAM user |

list(object({
name = string
statements = list(object({
actions = list(string)
resources = list(string)
}))
}))
| `[]` | no |
| [enabled](#input\_enabled) | Set to false to prevent the module from creating any resources | `bool` | `true` | no |
| [inline\_policies](#input\_inline\_policies) | Inline defined policies to attach to the IAM user |
list(object({
name = string
statements = list(object({
actions = list(string)
resources = list(string)
}))
}))
| `[]` | no |
| [path](#input\_path) | Path of the IAM user | `string` | `"/"` | no |
| [tags](#input\_tags) | Tags applied to all resources | `map(string)` | `{}` | no |

## Outputs

| Name | Description |
|------|-------------|
| [iam\_access\_key\_id](#output\_iam\_access\_key\_id) | The access key id |
| [iam\_access\_key\_secret](#output\_iam\_access\_key\_secret) | The access key secret |
| [iam\_user\_arn](#output\_iam\_user\_arn) | The IAM User ARN |
| [iam\_user\_id](#output\_iam\_user\_id) | The IAM User ID |

## License

[MIT](LICENSE)

Copyright (c) 2019 [Flaconi GmbH](https://github.com/Flaconi)