

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Versões do AFT e Terraform
<a name="version-supported"></a>

O Account Factory for Terraform (AFT) é compatível com o Terraform versão `1.6.0` ou posterior. Você deve fornecer uma versão do Terraform como parâmetro de entrada para o processo de implantação do AFT, conforme mostrado no exemplo a seguir.

```
terraform_version = "1.6.0"
```

## Distribuições do Terraform
<a name="terraform-distributions"></a>

O AFT permite três distribuições do Terraform:
+ Terraform Community Edition
+ Terraform Cloud
+ Terraform Enterprise

Essas distribuições serão explicadas nas seções a seguir. Forneça a distribuição do Terraform de sua escolha como um parâmetro de entrada durante o processo de inicialização do AFT. Consulte mais informações sobre a implantação do AFT e os parâmetros de entrada em [Account Factory for Terraform (AFT) do AWS Control Tower](aft-getting-started.md).

Se você escolher as distribuições Terraform Cloud ou Terraform Enterprise, o [token de API](https://www.terraform.io/cloud-docs/users-teams-organizations/api-tokens) especificado para `terraform_token `deverá ser um token de API de usuário ou equipe. Um token de organização não é compatível com todas as APIs necessárias. Por motivos de segurança, você deve evitar verificar o valor desse token em seu sistema de controle de versão (VCS) atribuindo uma [variável do terraform](https://www.terraform.io/cloud-docs/workspaces/variables/managing-variables), conforme mostrado no exemplo a seguir.

```
 # Sensitive variable managed in Terraform Cloud:
 terraform_token = var.terraform_cloud_token
```

### Terraform Community Edition
<a name="terraform-oss"></a>

Quando você seleciona o Terraform Community Edition como distribuição, o AFT gerencia o backend do Terraform para você na conta de gerenciamento do AFT. O AFT baixa a `terraform-cli` da versão especificada do Terraform para ser executada durante a implantação do AFT e as fases do pipeline do AFT. A configuração de estado do Terraform resultante será armazenada em um bucket do Amazon S3, nomeado com o seguinte formato:

```
aft-backend-[account_id]-primary-region
```

O AFT também cria um bucket do Amazon S3 que replica sua configuração de estado do Terraform em outra Região da AWS, para fins de recuperação de desastres, nomeado com o seguinte formato:

```
aft-backend-[account_id]-secondary-region
```

Recomendamos que você habilite a autenticação multifator (MFA) para excluir funções nesses buckets do Amazon S3 no estado do Terraform. Para saber mais sobre o Terraform Community Edition, consulte [a documentação do Terraform](https://www.terraform.io/docs/cli/index.html).

Para selecionar o Terraform OSS como sua distribuição, forneça o seguinte parâmetro de entrada:

```
terraform_distribution = "oss"
```

### Terraform Cloud
<a name="terraform-cloud"></a>

 Quando você seleciona o Terraform Cloud como sua distribuição, o AFT cria áreas de trabalho para os seguintes componentes em sua organização do Terraform Cloud, o que inicia um fluxo de trabalho orientado por API. 
+  Solicitação de conta 
+  Personalizações do AFT para contas provisionadas pelo AFT 
+  Personalizações de conta para contas provisionadas pelo AFT 
+  Personalizações globais para contas provisionadas pelo AFT 

 O Terraform Cloud gerencia a configuração de estado resultante do Terraform. 

 Ao selecionar o Terraform Cloud como sua distribuição, forneça os seguintes parâmetros de entrada: 
+  `terraform_distribution = "tfc"` 
+  `terraform_token`: esse parâmetro contém o valor do token do Terraform Cloud. O AFT marca como confidencial e armazena o valor como uma string segura no armazenamento de parâmetros do SSM na conta de gerenciamento do AFT. Recomendamos que você alterne periodicamente o valor do token do Terraform de acordo com as políticas de segurança e as diretrizes de conformidade da sua empresa. O token do Terraform deve ser um token de API de nível de usuário ou equipe. Os tokens da organização não são permitidos. 
+  `terraform_org_name`: esse parâmetro contém o nome da sua organização do Terraform Cloud. 

**nota**  
 Não há suporte para várias implantações do AFT em uma única organização do Terraform Cloud. 

 Consulte informações sobre como configurar o Terraform Cloud na [documentação do Terraform](https://www.terraform.io/docs/cloud/index.html). 

### Terraform Enterprise
<a name="terraform-enterprise"></a>

Quando você seleciona o Terraform Enterprise como sua distribuição, o AFT cria áreas de trabalho para os seguintes componentes em sua organização do Terraform Enterprise e aciona um fluxo de trabalho orientado por API para as execuções resultantes do Terraform.
+ Solicitação de conta
+ Personalizações de provisionamento de contas do AFT para contas provisionadas pelo AFT
+ Personalizações de conta para contas provisionadas pelo AFT
+ Personalizações globais para contas provisionadas pelo AFT

A configuração de estado resultante do Terraform é gerenciada pela configuração do Terraform Enterprise.

Para selecionar o Terraform Enterprise como sua distribuição, forneça os seguintes parâmetros de entrada:
+  `terraform_distribution = "tfe"` 
+ `terraform_token`: esse parâmetro contém o valor do seu token do Terraform Enterprise. O AFT marca seu valor como confidencial e o armazena como uma string segura no armazenamento de parâmetros do SSM, na conta de gerenciamento do AFT. Recomendamos que você alterne periodicamente o valor do token do Terraform de acordo com as políticas de segurança e as diretrizes de conformidade da sua empresa.
+ `terraform_org_name`: esse parâmetro contém o nome da sua organização do Terraform Enterprise.
+ `terraform_api_endpoint`: esse parâmetro contém o URL do seu ambiente do Terraform Enterprise. O valor desse parâmetro deve estar no formato:

  ```
  https://{fqdn}/api/v2/
  ```

Consulte [a documentação do Terraform](https://www.terraform.io/docs/enterprise/index.html) para saber mais sobre como configurar o Terraform Enterprise.