
Módulo Terraform para configurar sua conta AWS com a configuração de baseline segura baseada no CIS Amazon Web Services Foundations e nas práticas recomendadas de segurança fundamentais da AWS.
Registro de Módulos do Terraform
Um módulo do Terraform para configurar sua conta AWS com uma linha de base de configuração razoavelmente segura. A maioria das configurações é baseada no [CIS Amazon Web Services Foundations v1.4.0] e no [AWS Foundational Security Best Practices v1.0.0].
Veja Conformidade com Benchmarks para verificar quais itens em vários benchmarks são cobertos.
data "aws_caller_identity" "current" {} data "aws_region" "current" {}
module "secure_baseline" { source = "nozaq/secure-baseline/aws"
audit_log_bucket_name = "YOUR_BUCKET_NAME" aws_account_id = data.aws_caller_identity.current.account_id region = data.aws_region.current.name support_iam_role_principal_arns = ["YOUR_IAM_USER"]
providers = { aws = aws aws.ap-northeast-1 = aws.ap-northeast-1 aws.ap-northeast-2 = aws.ap-northeast-2 aws.ap-northeast-3 = aws.ap-northeast-3 aws.ap-south-1 = aws.ap-south-1 aws.ap-southeast-1 = aws.ap-southeast-1 aws.ap-southeast-2 = aws.ap-southeast-2 aws.ca-central-1 = aws.ca-central-1 aws.eu-central-1 = aws.eu-central-1 aws.eu-north-1 = aws.eu-north-1 aws.eu-west-1 = aws.eu-west-1 aws.eu-west-2 = aws.eu-west-2 aws.eu-west-3 = aws.eu-west-3 aws.sa-east-1 = aws.sa-east-1 aws.us-east-1 = aws.us-east-1 aws.us-east-2 = aws.us-east-2 aws.us-west-1 = aws.us-west-1 aws.us-west-2 = aws.us-west-2 } }
Verifique [o exemplo](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/examples/simple/regions.tf) para entender como esses provedores são definidos.
Observe que você precisa definir um provedor para cada região AWS e passá-los para o módulo. Atualmente esta é a forma recomendada para lidar com múltiplas regiões em um único módulo.
Informações detalhadas podem ser encontradas em [Providers within Modules - Terraform Docs].
Um novo bucket S3 para armazenar logs de auditoria é criado automaticamente por padrão, enquanto o bucket S3 externo pode ser especificado. É útil quando você já possui um bucket S3 centralizado para armazenar todos os logs. Por favor, veja o exemplo [external-bucket](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/examples/external-bucket) para mais detalhes.
### Gerenciando múltiplas contas na AWS Organization
Quando você tem múltiplas contas AWS em sua AWS Organization, o módulo `secure-baseline` configura o ambiente separado para cada conta AWS. Você pode alterar esse comportamento para gerenciar centralmente as informações de segurança e os logs de auditoria de todas as contas em uma conta mestra.
Verifique o exemplo [organization](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/examples/organization) para mais detalhes.
## Submódulos
Este módulo é composto por vários submódulos e cada um pode ser usado independentemente.
[Modules in Package Sub-directories - Terraform] descreve como referenciar um submódulo.
- [alarm-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/alarm-baseline)
- [analyzer-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/analyzer-baseline)
- [cloudtrail-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/cloudtrail-baseline)
- [config-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/config-baseline)
- [ebs-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/ebs-baseline)
- [guardduty-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/guardduty-baseline)
- [iam-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/iam-baseline)
- [s3-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/s3-baseline)
- [secure-bucket](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/secure-bucket)
- [securityhub-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/securityhub-baseline)
- [vpc-baseline](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/modules/vpc-baseline)
## Compatibilidade
- A partir da v1.0, este módulo requer [Terraform Provider for AWS](https://github.com/terraform-providers/terraform-provider-aws) v4.0 ou posterior. [Version 1.0 Upgrade Guide](https://github.com/nozaq/terraform-aws-secure-baseline/blob/HEAD/docs/upgrade-1.0.md) descreve o procedimento recomendado após a atualização.
- A partir da v0.20, este módulo requer [Terraform Provider for AWS](https://github.com/terraform-providers/terraform-provider-aws) v3.0 ou posterior. Por favor, use v0.19 se precisar usar v2.x ou anterior.
- A partir da v0.10, este módulo requer Terraform v0.12 ou posterior. Por favor, use v0.9 se precisar usar Terraform v0.11 ou anterior.
<!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
## Requirements
| Name | Version |
|------|---------|
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.1.4 |
| <a name="requirement_aws"></a> [aws](#requirement\_aws) | >= 4.3 |
## Providers
| Name | Version |
|------|---------|
| <a name="provider_aws"></a> [aws](#provider\_aws) | >= 4.3 |
## Inputs| Nome | Descrição | Tipo | Obrigatório |
|------|-------------|------|:--------:|
| <a name="input_audit_log_bucket_name"></a> [audit\_log\_bucket\_name](#input\_audit\_log\_bucket\_name) | O nome do bucket S3 para armazenar vários logs de auditoria. | `string` | sim |
| <a name="input_aws_account_id"></a> [aws\_account\_id](#input\_aws\_account\_id) | O ID da conta AWS da conta. | `string` | sim |
| <a name="input_region"></a> [region](#input\_region) | A região da AWS na qual os recursos globais são configurados. | `string` | sim |
| <a name="input_support_iam_role_principal_arns"></a> [support\_iam\_role\_principal\_arns](#input\_support\_iam\_role\_principal\_arns) | Lista de ARNs dos elementos principais do IAM pelos quais a função de suporte pode ser assumida. | `list(string)` | sim |
| <a name="input_account_type"></a> [account\_type](#input\_account\_type) | O tipo da conta AWS. Os valores possíveis são `individual`, `master` e `member`. Especifique `master` e `member` para configurar logs centralizados para várias contas na AWS Organization. Use `individual` caso contrário. | `string` | não |
| <a name="input_alarm_baseline_enabled"></a> [alarm\_baseline\_enabled](#input\_alarm\_baseline\_enabled) | Booleano que indica se a linha de base de alarme está ativada. | `bool` | não |
| <a name="input_alarm_namespace"></a> [alarm\_namespace](#input\_alarm\_namespace) | O namespace no qual todos os alarmes são configurados. | `string` | não |
| <a name="input_alarm_sns_topic_kms_master_key_id"></a> [alarm\_sns\_topic\_kms\_master\_key\_id](#input\_alarm\_sns\_topic\_kms\_master\_key\_id) | Para ativar a criptografia do tópico SNS, insira o valor com o ID de uma chave mestre KMS personalizada usada para criptografia. | `string` | não |
| <a name="input_alarm_sns_topic_name"></a> [alarm\_sns\_topic\_name](#input\_alarm\_sns\_topic\_name) | O nome do tópico SNS que será notificado quando qualquer alarme for executado. | `string` | não |
| <a name="input_allow_users_to_change_password"></a> [allow\_users\_to\_change\_password](#input\_allow\_users\_to\_change\_password) | Se deve permitir que os usuários alterem sua própria senha. | `bool` | não |
| <a name="input_analyzer_baseline_enabled"></a> [analyzer\_baseline\_enabled](#input\_analyzer\_baseline\_enabled) | Booleano que indica se a linha de base do analisador está ativada. | `bool` | não |
| <a name="input_analyzer_name"></a> [analyzer\_name](#input\_analyzer\_name) | O nome do recurso IAM Access Analyzer a ser criado. | `string` | não |
| <a name="input_audit_log_bucket_access_logs_name"></a> [audit\_log\_bucket\_access\_logs\_name](#input\_audit\_log\_bucket\_access\_logs\_name) | O nome do bucket S3 para armazenar vários logs de auditoria. | `string` | não |
| <a name="input_audit_log_bucket_custom_policy_json"></a> [audit\_log\_bucket\_custom\_policy\_json](#input\_audit\_log\_bucket\_custom\_policy\_json) | Substitui a política do bucket de log de auditoria. Permite a adição de políticas extras. | `string` | não |
| <a name="input_audit_log_bucket_force_destroy"></a> [audit\_log\_bucket\_force\_destroy](#input\_audit\_log\_bucket\_force\_destroy) | Um booleano que indica que todos os objetos devem ser excluídos do bucket de log de auditoria para que o bucket possa ser destruído sem erro. Esses objetos não são recuperáveis. | `bool` | não |
| <a name="input_audit_log_bucket_key_enabled"></a> [audit\_log\_bucket\_key\_enabled](#input\_audit\_log\_bucket\_key\_enabled) | Se deve ou não usar chaves de bucket S3 da Amazon para criptografar o bucket de log de auditoria. | `bool` | não |
| <a name="input_audit_log_lifecycle_glacier_transition_days"></a> [audit\_log\_lifecycle\_glacier\_transition\_days](#input\_audit\_log\_lifecycle\_glacier\_transition\_days) | O número de dias após a criação do log em que o arquivo de log é arquivado no Glacier. Definir como zero desabilita a transição. | `number` | não |
| <a name="input_aws_config_changes_enabled"></a> [aws\_config\_changes\_enabled](#input\_aws\_config\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações no AWS Config está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_cloudtrail_baseline_enabled"></a> [cloudtrail\_baseline\_enabled](#input\_cloudtrail\_baseline\_enabled) | Booleano que indica se a linha de base do CloudTrail está ativada. | `bool` | não |
| <a name="input_cloudtrail_cfg_changes_enabled"></a> [cloudtrail\_cfg\_changes\_enabled](#input\_cloudtrail\_cfg\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações na configuração do CloudTrail está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_cloudtrail_cloudwatch_logs_enabled"></a> [cloudtrail\_cloudwatch\_logs\_enabled](#input\_cloudtrail\_cloudwatch\_logs\_enabled) | Especifica se a trilha é entregue ao CloudWatch Logs. | `bool` | não |
| <a name="input_cloudtrail_cloudwatch_logs_group_name"></a> [cloudtrail\_cloudwatch\_logs\_group\_name](#input\_cloudtrail\_cloudwatch\_logs\_group\_name) | O nome do grupo de logs do CloudWatch para o qual os eventos do CloudTrail são entregues. | `string` | não |
| <a name="input_cloudtrail_dynamodb_event_logging_tables"></a> [cloudtrail\_dynamodb\_event\_logging\_tables](#input\_cloudtrail\_dynamodb\_event\_logging\_tables) | A lista de ARNs de tabelas do DynamoDB nas quais habilitar o registro de eventos. | `list(string)` | não |
| <a name="input_cloudtrail_iam_role_name"></a> [cloudtrail\_iam\_role\_name](#input\_cloudtrail\_iam\_role\_name) | O nome da função IAM a ser usada pelo CloudTrail para entregar logs ao grupo de logs do CloudWatch. | `string` | não |
| <a name="input_cloudtrail_iam_role_policy_name"></a> [cloudtrail\_iam\_role\_policy\_name](#input\_cloudtrail\_iam\_role\_policy\_name) | O nome da política da função IAM a ser usada pelo CloudTrail para entregar logs ao grupo de logs do CloudWatch. | `string` | não |
| <a name="input_cloudtrail_key_deletion_window_in_days"></a> [cloudtrail\_key\_deletion\_window\_in\_days](#input\_cloudtrail\_key\_deletion\_window\_in\_days) | Duração em dias após a qual a chave é excluída após a destruição do recurso, deve estar entre 7 e 30 dias. O padrão é 30 dias. | `number` | não |
| <a name="input_cloudtrail_lambda_invocation_logging_lambdas"></a> [cloudtrail\_lambda\_invocation\_logging\_lambdas](#input\_cloudtrail\_lambda\_invocation\_logging\_lambdas) | A lista de ARNs de funções Lambda nas quais habilitar o registro de invocação. | `list(string)` | não |
| <a name="input_cloudtrail_name"></a> [cloudtrail\_name](#input\_cloudtrail\_name) | O nome da trilha. | `string` | não |
| <a name="input_cloudtrail_s3_key_prefix"></a> [cloudtrail\_s3\_key\_prefix](#input\_cloudtrail\_s3\_key\_prefix) | O prefixo usado quando o CloudTrail entrega eventos ao bucket S3. | `string` | não |
| <a name="input_cloudtrail_s3_object_level_logging_buckets"></a> [cloudtrail\_s3\_object\_level\_logging\_buckets](#input\_cloudtrail\_s3\_object\_level\_logging\_buckets) | A lista de ARNs de buckets S3 nos quais habilitar o registro em nível de objeto. | `list(string)` | não |
| <a name="input_cloudtrail_sns_topic_enabled"></a> [cloudtrail\_sns\_topic\_enabled](#input\_cloudtrail\_sns\_topic\_enabled) | Especifica se a trilha é entregue a um tópico SNS. | `bool` | não |
| <a name="input_cloudtrail_sns_topic_name"></a> [cloudtrail\_sns\_topic\_name](#input\_cloudtrail\_sns\_topic\_name) | O nome do tópico SNS a ser vinculado à trilha. | `string` | não |
| <a name="input_cloudwatch_logs_retention_in_days"></a> [cloudwatch\_logs\_retention\_in\_days](#input\_cloudwatch\_logs\_retention\_in\_days) | Número de dias para reter logs. A CIS recomenda 365 dias. Os valores possíveis são: 0, 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827 e 3653. Defina como 0 para manter logs indefinidamente. | `number` | não |
| <a name="input_config_aggregator_name"></a> [config\_aggregator\_name](#input\_config\_aggregator\_name) | O nome do agregador de configuração do AWS Config organizacional. | `string` | não |
| <a name="input_config_aggregator_name_prefix"></a> [config\_aggregator\_name\_prefix](#input\_config\_aggregator\_name\_prefix) | O prefixo do nome da função IAM anexada ao agregador de configuração do AWS Config organizacional. | `string` | não |
| <a name="input_config_baseline_enabled"></a> [config\_baseline\_enabled](#input\_config\_baseline\_enabled) | Booleano que indica se a linha de base de configuração está ativada. | `bool` | não |
| <a name="input_config_delivery_frequency"></a> [config\_delivery\_frequency](#input\_config\_delivery\_frequency) | A frequência com que o AWS Config envia um instantâneo para o bucket S3. | `string` | não |
| <a name="input_config_global_resources_all_regions"></a> [config\_global\_resources\_all\_regions](#input\_config\_global\_resources\_all\_regions) | Gravar recursos globais em todas as regiões. Se false, apenas a região padrão gravará recursos globais. | `bool` | não |
| <a name="input_config_iam_role_name"></a> [config\_iam\_role\_name](#input\_config\_iam\_role\_name) | O nome da função IAM que o AWS Config usará. | `string` | não |
| <a name="input_config_iam_role_policy_name"></a> [config\_iam\_role\_policy\_name](#input\_config\_iam\_role\_policy\_name) | O nome da política da função IAM que o AWS Config usará. | `string` | não |
| <a name="input_config_s3_bucket_key_prefix"></a> [config\_s3\_bucket\_key\_prefix](#input\_config\_s3\_bucket\_key\_prefix) | O prefixo usado ao gravar instantâneos do AWS Config no bucket S3. | `string` | não |
| <a name="input_config_sns_topic_kms_master_key_id"></a> [config\_sns\_topic\_kms\_master\_key\_id](#input\_config\_sns\_topic\_kms\_master\_key\_id) | Para ativar a criptografia do tópico SNS, insira o valor com o ID de uma chave mestre KMS personalizada usada para criptografia. | `string` | não |
| <a name="input_config_sns_topic_name"></a> [config\_sns\_topic\_name](#input\_config\_sns\_topic\_name) | O nome do tópico SNS a ser usado para notificar alterações de configuração. | `string` | não |
| <a name="input_console_signin_failures_enabled"></a> [console\_signin\_failures\_enabled](#input\_console\_signin\_failures\_enabled) | O sinalizador booleano que indica se o alarme de falhas de login no console está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_create_password_policy"></a> [create\_password\_policy](#input\_create\_password\_policy) | Define se a política de senha deve ser criada. | `bool` | não |
| <a name="input_create_support_role"></a> [create\_support\_role](#input\_create\_support\_role) | Define se a função de suporte deve ser criada. | `bool` | não |
| <a name="input_disable_or_delete_cmk_enabled"></a> [disable\_or\_delete\_cmk\_enabled](#input\_disable\_or\_delete\_cmk\_enabled) | O sinalizador booleano que indica se o alarme de desabilitar ou excluir CMK está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_guardduty_disable_email_notification"></a> [guardduty\_disable\_email\_notification](#input\_guardduty\_disable\_email\_notification) | Booleano que indica se uma notificação por e-mail é enviada para as contas. | `bool` | não |
| <a name="input_guardduty_enabled"></a> [guardduty\_enabled](#input\_guardduty\_enabled) | Booleano que indica se o módulo de linha de base do GuardDuty está ativado ou desativado. | `bool` | não |
| <a name="input_guardduty_finding_publishing_frequency"></a> [guardduty\_finding\_publishing\_frequency](#input\_guardduty\_finding\_publishing\_frequency) | Especifica a frequência de notificações enviadas para ocorrências de descobertas subsequentes. | `string` | não |
| <a name="input_guardduty_invitation_message"></a> [guardduty\_invitation\_message](#input\_guardduty\_invitation\_message) | Mensagem para convite. | `string` | não |
| <a name="input_iam_baseline_enabled"></a> [iam\_baseline\_enabled](#input\_iam\_baseline\_enabled) | Booleano que indica se a linha de base do IAM está ativada. | `bool` | não |
| <a name="input_iam_changes_enabled"></a> [iam\_changes\_enabled](#input\_iam\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações no IAM está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_master_account_id"></a> [master\_account\_id](#input\_master\_account\_id) | O ID da conta mestre AWS à qual a conta AWS atual está associada. Necessário se `account_type` for `member`. | `string` | não |
| <a name="input_max_password_age"></a> [max\_password\_age](#input\_max\_password\_age) | O número de dias que uma senha de usuário é válida. | `number` | não |
| <a name="input_member_accounts"></a> [member\_accounts](#input\_member\_accounts) | Uma lista de IDs e e-mails de contas AWS associadas como contas membro. | <pre>list(object({<br> account_id = string<br> email = string<br> }))</pre> | não |
| <a name="input_mfa_console_signin_allow_sso"></a> [mfa\_console\_signin\_allow\_sso](#input\_mfa\_console\_signin\_allow\_sso) | O sinalizador booleano que indica se o alarme de login no console sem MFA permite ignorar a autenticação SSO. | `bool` | não |
| <a name="input_minimum_password_length"></a> [minimum\_password\_length](#input\_minimum\_password\_length) | Comprimento mínimo a ser exigido para senhas de usuário. | `number` | não |
| <a name="input_nacl_changes_enabled"></a> [nacl\_changes\_enabled](#input\_nacl\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações em NACL está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_network_gw_changes_enabled"></a> [network\_gw\_changes\_enabled](#input\_network\_gw\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações em gateway de rede está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_no_mfa_console_signin_enabled"></a> [no\_mfa\_console\_signin\_enabled](#input\_no\_mfa\_console\_signin\_enabled) | O sinalizador booleano que indica se o alarme de login no console sem MFA está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_organizations_changes_enabled"></a> [organizations\_changes\_enabled](#input\_organizations\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações na organização está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_password_reuse_prevention"></a> [password\_reuse\_prevention](#input\_password\_reuse\_prevention) | O número de senhas anteriores que os usuários são impedidos de reutilizar. | `number` | não |
| <a name="input_permissions_boundary_arn"></a> [permissions\_boundary\_arn](#input\_permissions\_boundary\_arn) | O ARN do limite de permissões para todas as funções IAM provisionadas por este módulo. | `string` | não |
| <a name="input_require_lowercase_characters"></a> [require\_lowercase\_characters](#input\_require\_lowercase\_characters) | Se deve exigir caracteres minúsculos para senhas de usuário. | `bool` | não |
| <a name="input_require_numbers"></a> [require\_numbers](#input\_require\_numbers) | Se deve exigir números para senhas de usuário. | `bool` | não |
| <a name="input_require_symbols"></a> [require\_symbols](#input\_require\_symbols) | Se deve exigir símbolos para senhas de usuário. | `bool` | não |
| <a name="input_require_uppercase_characters"></a> [require\_uppercase\_characters](#input\_require\_uppercase\_characters) | Se deve exigir caracteres maiúsculos para senhas de usuário. | `bool` | não |
| <a name="input_root_usage_enabled"></a> [root\_usage\_enabled](#input\_root\_usage\_enabled) | O sinalizador booleano que indica se o alarme de uso da raiz está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_route_table_changes_enabled"></a> [route\_table\_changes\_enabled](#input\_route\_table\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações em tabela de roteamento está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_s3_baseline_enabled"></a> [s3\_baseline\_enabled](#input\_s3\_baseline\_enabled) | Booleano que indica se a linha de base do S3 está ativada. | `bool` | não |
| <a name="input_s3_block_public_acls"></a> [s3\_block\_public\_acls](#input\_s3\_block\_public\_acls) | Se o Amazon S3 deve bloquear ACLs públicas para buckets nesta conta. O padrão é true. | `bool` | não |
| <a name="input_s3_block_public_policy"></a> [s3\_block\_public\_policy](#input\_s3\_block\_public\_policy) | Se o Amazon S3 deve bloquear políticas públicas de bucket para buckets nesta conta. O padrão é true. | `bool` | não |
| <a name="input_s3_bucket_policy_changes_enabled"></a> [s3\_bucket\_policy\_changes\_enabled](#input\_s3\_bucket\_policy\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações em política de bucket S3 está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_s3_ignore_public_acls"></a> [s3\_ignore\_public\_acls](#input\_s3\_ignore\_public\_acls) | Se o Amazon S3 deve ignorar ACLs públicas para buckets nesta conta. O padrão é true. | `bool` | não |
| <a name="input_s3_restrict_public_buckets"></a> [s3\_restrict\_public\_buckets](#input\_s3\_restrict\_public\_buckets) | Se o Amazon S3 deve restringir políticas públicas de bucket para buckets nesta conta. O padrão é true. | `bool` | não |
| <a name="input_security_group_changes_enabled"></a> [security\_group\_changes\_enabled](#input\_security\_group\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações em grupo de segurança está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_securityhub_enable_aws_foundational_standard"></a> [securityhub\_enable\_aws\_foundational\_standard](#input\_securityhub\_enable\_aws\_foundational\_standard) | Booleano que indica se o padrão AWS Foundations está ativado. | `bool` | não |
| <a name="input_securityhub_enable_cis_standard"></a> [securityhub\_enable\_cis\_standard](#input\_securityhub\_enable\_cis\_standard) | Booleano que indica se o padrão CIS está ativado. | `bool` | não |
| <a name="input_securityhub_enable_pci_dss_standard"></a> [securityhub\_enable\_pci\_dss\_standard](#input\_securityhub\_enable\_pci\_dss\_standard) | Booleano que indica se o padrão PCI DSS está ativado. | `bool` | não |
| <a name="input_securityhub_enable_product_arns"></a> [securityhub\_enable\_product\_arns](#input\_securityhub\_enable\_product\_arns) | Lista de ARNs de produtos do Security Hub, `<REGION>` será substituído. Consulte https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-partner-providers.html para obter a lista. | `list(string)` | não |
| <a name="input_securityhub_enabled"></a> [securityhub\_enabled](#input\_securityhub\_enabled) | Booleano que indica se o módulo de linha de base do Security Hub está ativado ou desativado. | `bool` | não |
| <a name="input_support_iam_role_name"></a> [support\_iam\_role\_name](#input\_support\_iam\_role\_name) | O nome da função de suporte. | `string` | não |
| <a name="input_tags"></a> [tags](#input\_tags) | Especifica chave e valor das tags de objeto. Isso se aplica a todos os recursos criados por este módulo. | `map(string)` | não |
| <a name="input_target_regions"></a> [target\_regions](#input\_target\_regions) | Uma lista de regiões para configurar com este módulo. | `list(string)` | não |
| <a name="input_turn_off_organization_trail"></a> [turn\_off\_organization\_trail](#input\_turn\_off\_organization\_trail) | Especifica se deve desabilitar a trilha da organização. As trilhas da organização registram eventos para a conta mestre e todas as contas membro. Só pode ser criada na conta mestre da organização. | `bool` | não |
| <a name="input_unauthorized_api_calls_enabled"></a> [unauthorized\_api\_calls\_enabled](#input\_unauthorized\_api\_calls\_enabled) | O sinalizador booleano que indica se o alarme de chamadas de API não autorizadas está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_use_external_audit_log_bucket"></a> [use\_external\_audit\_log\_bucket](#input\_use\_external\_audit\_log\_bucket) | Um booleano que indica se o bucket de log de auditoria específico já existe. Cria um novo bucket S3 se definido como false. | `bool` | não |
| <a name="input_vpc_changes_enabled"></a> [vpc\_changes\_enabled](#input\_vpc\_changes\_enabled) | O sinalizador booleano que indica se o alarme de alterações na VPC está ativado ou não. Nenhum recurso é criado quando definido como false. | `bool` | não |
| <a name="input_vpc_enable"></a> [vpc\_enable](#input\_vpc\_enable) | Booleano que indica se o módulo de linha de base da VPC deve ser ativado. | `bool` | não |
| <a name="input_vpc_enable_flow_logs"></a> [vpc\_enable\_flow\_logs](#input\_vpc\_enable\_flow\_logs) | O sinalizador booleano que indica se deve habilitar logs de fluxo VPC em VPCs padrão. | `bool` | não |
| <a name="input_vpc_flow_logs_destination_type"></a> [vpc\_flow\_logs\_destination\_type](#input\_vpc\_flow\_logs\_destination\_type) | O tipo do destino de registro. Valores válidos: cloud-watch-logs, s3. | `string` | não |
| <a name="input_vpc_flow_logs_log_group_name"></a> [vpc\_flow\_logs\_log\_group\_name](#input\_vpc\_flow\_logs\_log\_group\_name) | O nome do grupo de logs do CloudWatch para o qual os logs de fluxo VPC são entregues. | `string` | não |
| <a name="input_vpc_flow_logs_retention_in_days"></a> [vpc\_flow\_logs\_retention\_in\_days](#input\_vpc\_flow\_logs\_retention\_in\_days) | Número de dias para reter logs se vpc_log_destination_type for cloud-watch-logs. A CIS recomenda 365 dias. Os valores possíveis são: 0, 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827 e 3653. Defina como 0 para manter logs indefinidamente. | `number` | não |
| <a name="input_vpc_flow_logs_s3_arn"></a> [vpc\_flow\_logs\_s3\_arn](#input\_vpc\_flow\_logs\_s3\_arn) | ARN do bucket S3 para o qual os logs de fluxo VPC são entregues se vpc_log_destination_type for s3. | `string` | não |
| <a name="input_vpc_flow_logs_s3_key_prefix"></a> [vpc\_flow\_logs\_s3\_key\_prefix](#input\_vpc\_flow\_logs\_s3\_key\_prefix) | O prefixo usado quando os logs de fluxo VPC entregam logs ao bucket S3. | `string` | não |
| <a name="input_vpc_iam_role_name"></a> [vpc\_iam\_role\_name](#input\_vpc\_iam\_role\_name) | O nome da função IAM que os logs de fluxo VPC usarão. | `string` | não |
| <a name="input_vpc_iam_role_policy_name"></a> [vpc\_iam\_role\_policy\_name](#input\_vpc\_iam\_role\_policy\_name) | O nome da política da função IAM que os logs de fluxo VPC usarão. | `string` | não |## Saídas
| Nome | Descrição |
|------|-------------|
| <a name="output_alarm_sns_topic"></a> [alarm\_sns\_topic](#output\_alarm\_sns\_topic) | O tópico SNS para o qual os Alarmes do CloudWatch serão enviados. |
| <a name="output_audit_bucket"></a> [audit\_bucket](#output\_audit\_bucket) | O bucket S3 usado para armazenar logs de auditoria. |
| <a name="output_cloudtrail"></a> [cloudtrail](#output\_cloudtrail) | A trilha para registrar eventos em todas as regiões. |
| <a name="output_cloudtrail_kms_key"></a> [cloudtrail\_kms\_key](#output\_cloudtrail\_kms\_key) | A chave KMS usada para criptografar eventos do CloudTrail. |
| <a name="output_cloudtrail_log_delivery_iam_role"></a> [cloudtrail\_log\_delivery\_iam\_role](#output\_cloudtrail\_log\_delivery\_iam\_role) | A função IAM usada para entregar eventos do CloudTrail ao CloudWatch Logs. |
| <a name="output_cloudtrail_log_group"></a> [cloudtrail\_log\_group](#output\_cloudtrail\_log\_group) | O grupo de logs do CloudWatch Logs que armazena eventos do CloudTrail. |
| <a name="output_cloudtrail_sns_topic"></a> [cloudtrail\_sns\_topic](#output\_cloudtrail\_sns\_topic) | O tópico SNS vinculado ao cloudtrail. |
| <a name="output_config_configuration_recorder"></a> [config\_configuration\_recorder](#output\_config\_configuration\_recorder) | O gravador de configuração em cada região. |
| <a name="output_config_iam_role"></a> [config\_iam\_role](#output\_config\_iam\_role) | A função IAM usada para entregar registros do AWS Config ao CloudWatch Logs. |
| <a name="output_config_sns_topic"></a> [config\_sns\_topic](#output\_config\_sns\_topic) | O tópico SNS) para o qual o AWS Config envia notificações. |
| <a name="output_default_network_acl"></a> [default\_network\_acl](#output\_default\_network\_acl) | A ACL de rede padrão. |
| <a name="output_default_route_table"></a> [default\_route\_table](#output\_default\_route\_table) | A tabela de roteamento padrão. |
| <a name="output_default_security_group"></a> [default\_security\_group](#output\_default\_security\_group) | O ID do grupo de segurança padrão. |
| <a name="output_default_vpc"></a> [default\_vpc](#output\_default\_vpc) | A VPC padrão. |
| <a name="output_guardduty_detector"></a> [guardduty\_detector](#output\_guardduty\_detector) | O detector do GuardDuty em cada região. |
| <a name="output_support_iam_role"></a> [support\_iam\_role](#output\_support\_iam\_role) | A função IAM usada para o usuário de suporte. |
| <a name="output_vpc_flow_logs_group"></a> [vpc\_flow\_logs\_group](#output\_vpc\_flow\_logs\_group) | O grupo de logs do CloudWatch Logs que armazena os VPC Flow Logs em cada região. |
| <a name="output_vpc_flow_logs_iam_role"></a> [vpc\_flow\_logs\_iam\_role](#output\_vpc\_flow\_logs\_iam\_role) | A função IAM usada para entregar VPC Flow Logs ao CloudWatch Logs. |
<!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK -->
[cis amazon web services foundations v1.4.0]: https://www.cisecurity.org/benchmark/amazon_web_services/
[aws foundational security best practices v1.0.0]: https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp.html
[providers within modules - terraform docs]: https://www.terraform.io/docs/modules/usage.html#providers-within-modules
[modules in package sub-directories - terraform]: https://www.terraform.io/docs/modules/sources.html#modules-in-package-sub-directories