

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á.

# Configurando o AWS AppConfig Agente para recuperar configurações de várias contas
<a name="appconfig-agent-how-to-use-additional-features-multi-account"></a>

Você pode configurar o AWS AppConfig Agente para recuperar configurações de várias Contas da AWS inserindo substituições de credenciais no manifesto do Agente. AWS AppConfig As *substituições de credenciais* incluem o Amazon Resource Name (ARN) de uma função AWS Identity and Access Management (IAM), um ID da função, um nome de sessão e a duração de quanto tempo o agente pode assumir a função. 

Você insere esses detalhes em uma seção de “credenciais” no manifesto. A seção “credenciais” usa o seguinte formato:

```
{
    "application_name:environment_name:configuration_name": {
        "credentials": {
            "roleArn": "arn:partition:iam::account_ID:role/roleName",
            "roleExternalId": "string",
            "roleSessionName": "string",
            "credentialsDuration": "time_in_hours" 
        }
    }
}
```

Exemplo:

```
{
    "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": {
        "credentials": {
            "roleArn": "arn:aws:us-west-1:iam::123456789012:role/MyTestRole",
            "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac",
            "roleSessionName": "AWSAppConfigAgent",
            "credentialsDuration": "2h" 
        }
    }
}
```

Antes de recuperar uma configuração, o agente lê os detalhes da credencial da configuração no manifesto e, depois, assume o perfil do IAM especificado para essa configuração. É possível especificar um conjunto diferente de substituições de credencial para configurações diferentes em um único manifesto. O diagrama a seguir mostra como o AWS AppConfig Agente, ao ser executado na Conta A (a conta de recuperação), assume funções separadas especificadas para as Contas B e C (as contas do fornecedor) e, em seguida, chama a operação da [GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html)API para recuperar os dados de configuração da AWS AppConfig execução nessas contas:

![\[Como o AWS AppConfig agente trabalha com funções do IAM em partes separadas Contas da AWS.\]](http://docs.aws.amazon.com/pt_br/appconfig/latest/userguide/images/agent multi-account.png)


## Configurar permissões para recuperar dados de configuração das contas fornecedoras
<a name="appconfig-agent-how-to-use-additional-features-multi-account-permission"></a>

AWS AppConfig O agente em execução na conta de recuperação precisa de permissão para recuperar dados de configuração das contas do fornecedor. Você concede permissão ao agente criando uma função AWS Identity and Access Management (IAM) em cada uma das contas do fornecedor. AWS AppConfig O agente na conta de recuperação assume essa função para obter dados das contas do fornecedor. Conclua os procedimentos nesta seção para criar uma política de permissões do IAM, um perfil do IAM e adicionar substituições do agente ao manifesto.

**Antes de começar**  
Colete as informações a seguir antes de criar uma política de permissão e um perfil no IAM.
+ O IDs para cada um Conta da AWS. A conta *de recuperação* é a conta que chamará outras contas para dados de configuração. As contas *fornecedoras* são as contas que fornecerão os dados de configuração à conta de recuperação.
+ O nome da função do IAM usada AWS AppConfig na conta de recuperação. Aqui está uma lista das funções usadas por AWS AppConfig, por padrão:
  + Para o Amazon Elastic Compute Cloud (Amazon EC2) AWS AppConfig , usa a função de instância.
  + Para AWS Lambda, AWS AppConfig usa a função de execução do Lambda.
  + Para o Amazon Elastic Container Service (Amazon ECS) e o Amazon Elastic Kubernetes Service (Amazon EKS), usa a função de contêiner. AWS AppConfig 

  Se você configurou o AWS AppConfig Agente para usar uma função diferente do IAM especificando a variável de `ROLE_ARN` ambiente, anote esse nome.

**Criar a política de permissões**  
Use o procedimento a seguir para criar uma política de permissões usando o console do IAM. Conclua o procedimento em cada um deles Conta da AWS que fornecerá dados de configuração para a conta de recuperação.

**Para criar uma política do IAM**

1. Faça login Console de gerenciamento da AWS na conta de um fornecedor.

1. Abra o console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. No painel de navegação, selecione **Políticas** e, em seguida, **Criar política**.

1. Escolha a opção **JSON**.

1. No **Editor de políticas**, substitua o JSON padrão pela declaração de política a seguir. Atualize cada um *example resource placeholder* com os detalhes da conta do fornecedor.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "appconfig:StartConfigurationSession",
                   "appconfig:GetLatestConfiguration"
               ],
               "Resource": "arn:aws:appconfig:us-east-1:111122223333:application/vendor_application_ID/environment/vendor_environment_ID/configuration/vendor_configuration_ID"
           }
       ]
   }
   ```

------

   Veja um exemplo abaixo:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [{
           "Effect": "Allow",
           "Action": [
               "appconfig:StartConfigurationSession",
               "appconfig:GetLatestConfiguration"
           ],
           "Resource": "arn:aws:appconfig:us-east-2:111122223333:application/abc123/environment/def456/configuration/hij789"
       }
      ]
   }
   ```

------

1. Escolha **Próximo**.

1. No campo **Nome da política**, insira um nome.

1. (Opcional) Em **Adicionar tags**, adicione um ou mais pares de chave-valor de tag para organizar, monitorar ou controlar o acesso para essa política.

1. Selecione **Criar política**. O sistema retorna para a página **Policies (Políticas)**.

1. Repita esse procedimento em cada uma delas Conta da AWS que fornecerá dados de configuração para a conta de recuperação.

**Crie o perfil do IAM.**  
Use o procedimento a seguir para criar um perfil do IAM usando o console do IAM. Conclua o procedimento em cada um deles Conta da AWS que fornecerá dados de configuração para a conta de recuperação.

**Para criar um perfil do IAM**

1. Faça login Console de gerenciamento da AWS na conta de um fornecedor.

1. Abra o console do IAM em [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. No painel de navegação, selecione **Perfis** e, depois, **Criar política**.

1. Em **Tipo de entidade confiável**, escolha **Conta da AWS**.

1. Na seção **Conta da AWS**, escolha **Outra Conta da AWS**.

1. No campo **ID da conta**, insira o ID da conta de recuperação.

1. (Opcional) Como prática recomendada de segurança para esse perfil assumido, selecione **Exigir ID externo** e insira uma string.

1. Escolha **Próximo**.

1. Na página **Adicionar permissões**, use o campo **Pesquisar** para localizar a política criada no procedimento anterior. Marque a caixa de seleção ao lado do nome. 

1. Escolha **Próximo**.

1. Em **Nome do perfil**, insira um nome.

1. (Opcional) Em **Description (Descrição)**, insira uma descrição.

1. Em **Etapa 1: selecionar entidades confiáveis**, selecione **Editar**. Substitua a política de confiança JSON padrão pela política a seguir. Atualize cada um *example resource placeholder* com as informações da sua conta de recuperação.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:role/appconfig_role_in_retrieval_account"
               },
               "Action": "sts:AssumeRole"
           }
       ]
   }
   ```

------

1. (Opcional) em **Tags**, adicione um ou mais pares de valores tag-chave para organizar, monitorar ou controlar acesso para essa função.

1. Selecione **Create role** (Criar função). O sistema faz com que você retorne para a página **Roles**.

1. Procure o perfil que você acabou de criar. Escolha-o. Na seção **ARN**, copie o ARN. Você especificará essas informações no próximo procedimento.

**Adicionar substituições de credencial ao manifesto**  
Depois de criar perfil do IAM em sua conta fornecedora, atualize o manifesto na conta de recuperação. Especificamente, adicione o bloco de credenciais e o ARN do perfil do IAM para recuperar dados de configuração da conta fornecedora. Veja o formato JSON:

```
{
    "vendor_application_name:vendor_environment_name:vendor_configuration_name": {
        "credentials": {
            "roleArn": "arn:partition:iam::vendor_account_ID:role/name_of_role_created_in_vendor_account",
            "roleExternalId": "string",
            "roleSessionName": "string",
            "credentialsDuration": "time_in_hours" 
        }
    }
}
```

Exemplo:

```
{
    "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": {
        "credentials": {
            "roleArn": "arn:aws:us-west-1:iam::123456789012:role/MyTestRole",
            "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac",
            "roleSessionName": "AwsAppConfigAgent",
            "credentialsDuration": "2h" 
        }
    }
}
```

**Confirmar se a recuperação de várias contas está funcionando**  
Você pode validar se esse agente é capaz de recuperar dados de configuração de várias contas revisando os registros do AWS AppConfig agente. O log de nível `INFO` dos dados iniciais recuperados para “`YourApplicationName`:`YourEnvironmentName`:`YourConfigurationName`” é o melhor indicador de recuperações bem-sucedidas. Se as recuperações estiverem falhando, você deverá ver um log de nível `ERROR` indicando o motivo da falha. Aqui está um exemplo de recuperação bem-sucedida de uma conta fornecedora:

```
[appconfig agent] 2023/11/13 11:33:27 INFO AppConfig Agent 2.0.x
[appconfig agent] 2023/11/13 11:33:28 INFO serving on localhost:2772
[appconfig agent] 2023/11/13 11:33:28 INFO retrieved initial data for 'MyTestApplication:MyTestEnvironment:MyDenyListConfiguration' in XX.Xms
```