this module allows to configure aws account level resources which are not part to specific environment/application and are global impact on aws
module "account" {
source = "dasmeta/account/aws"
version = "x.y.z"
create_cloudwatch_log_role = true
}- from <=1.3.7 to >=1.3.8
- if you have had
cost_report_exportandaccount_events_exportused it is possible that after update to new version it will show some additional delete/create resources and will fail at firs apply. This is ok and there is need to plan apply one more time to get the needed resources related to account cost and events export created.
- if you have had
| Name | Version |
|---|---|
| terraform | ~> 1.3 |
| aws | ~> 5.0 |
| Name | Version |
|---|---|
| aws | ~> 5.0 |
| Name | Source | Version |
|---|---|---|
| account_events_export | ./modules/account-events-export | n/a |
| account_events_export_virginia | ./modules/account-events-export | n/a |
| buckets | dasmeta/s3/aws | 1.3.1 |
| cloudtrail | dasmeta/modules/aws//modules/cloudtrail/ | 2.18.3 |
| cloudwatch_alarm_actions | dasmeta/monitoring/aws//modules/cloudwatch-alarm-actions | 1.20.1 |
| cloudwatch_alarm_actions_virginia | dasmeta/monitoring/aws//modules/cloudwatch-alarm-actions | 1.20.1 |
| cost_report_export | ./modules/cost-report-export | n/a |
| enforce_mfa | terraform-module/enforce-mfa/aws | ~> 1.0 |
| enforce_mfa_group | terraform-aws-modules/iam/aws//modules/iam-group-with-policies | 5.47.1 |
| groups | terraform-aws-modules/iam/aws//modules/iam-group-with-policies | 5.47.1 |
| monitoring_billing | dasmeta/monitoring/aws//modules/billing | 1.19.5 |
| monitoring_security_hub | dasmeta/monitoring/aws//modules/security-hub | 1.19.5 |
| password_policy | dasmeta/modules/aws//modules/iam-account-password-policy | 2.18.0 |
| secrets | dasmeta/modules/aws//modules/secret | 2.18.0 |
| users | dasmeta/iam/aws//modules/user | 1.2.1 |
| Name | Type |
|---|---|
| aws_caller_identity.current | data source |
| aws_region.current | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| account_events_export | Allows to configure and stream aws account important events to specified webhook_endpoint, NOTE: webhook_endpoint is required when enabling this |
object({ |
{} |
no |
| alarm_actions | Whether to enable/create regional(TODO: add also us-east-1 region alarm also for health-check alarms) SNS topic/subscribers | object({ |
{ |
no |
| alarm_actions_virginia | Whether to enable/create regional(TODO: add also us-east-1 region alarm also for health-check alarms) SNS topic/subscribers | object({ |
{ |
no |
| buckets | List of buckets | list(object({ |
[] |
no |
| cloudtrail | Cloudtrail configuration | object({ |
{ |
no |
| cost_report_export | Allows to configure and get cost report of previous day to specified webhook_endpoint, NOTE: webhook_endpoint is required when enabling this |
object({ |
{} |
no |
| create_cloudwatch_log_role | This is an account level configuration which creates IAM role with policy allowing cloudwatch sync/push logs into cloudwatch | bool |
false |
no |
| enforce_mfa | MFA related configs, set the name for enforce MFA IAM user group value to null if you want this group to not be created | object({ |
{} |
no |
| groups | n/a | list(object({ |
[] |
no |
| password_policy | Allows to create/set aws iam users password policy for better security | object({ |
{} |
no |
| secrets | Allows to create account level aws secret manager secret for storing global/shared secrets, which supposed can be used by all services/apps/environments | object({ |
{} |
no |
| users | List of users | list(object({ |
[] |
no |
| Name | Description |
|---|---|
| users | created users data |