

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Uso de un manifiesto para habilitar características de recuperación adicionales
<a name="appconfig-agent-how-to-use-additional-features"></a>

AWS AppConfig El agente ofrece las siguientes funciones adicionales para ayudarle a recuperar las configuraciones de sus aplicaciones. 
+ [Configurar el AWS AppConfig agente para recuperar las configuraciones de varias cuentas](appconfig-agent-how-to-use-additional-features-multi-account.md): Utilice el AWS AppConfig agente de una cuenta principal o de *recuperación* Cuenta de AWS para recuperar los datos de configuración de varias cuentas de proveedores. 
+ [Configurar el AWS AppConfig agente para escribir copias de la configuración en el disco](appconfig-agent-how-to-use-additional-features-write-to-disk.md): utilice el agente de AWS AppConfig para escribir los datos de configuración en el disco. Esta característica permite a los clientes con aplicaciones que leen los datos de configuración del disco integrarse con AWS AppConfig.

## Descripción de los manifiestos del agente
<a name="appconfig-agent-how-to-use-additional-features-about-manifests"></a>

Para habilitar estas funciones AWS AppConfig del agente, debe crear un manifiesto. Un manifiesto es un conjunto de datos de configuración que se proporcionan para controlar las acciones que el agente puede realizar. Un manifiesto se escribe en JSON. Contiene un conjunto de claves de nivel superior que corresponden a las diferentes configuraciones que ha utilizado AWS AppConfig para implementar.

Un manifiesto puede incluir varias configuraciones. Además, cada configuración del manifiesto puede identificar una o más características del agente para utilizarlas en la configuración especificada. El contenido del manifiesto utiliza el siguiente formato:

```
{
    "application_name:environment_name:configuration_name": {
        "agent_feature_to_enable_1": {
            "feature-setting-key": "feature-setting-value"
        },
        "agent_feature_to_enable_2": {
            "feature-setting-key": "feature-setting-value"
        }
    }
}
```

A continuación, se muestra un ejemplo de JSON para un manifiesto con dos configuraciones. La primera configuración (*MyApp*) no utiliza ninguna función del AWS AppConfig agente. La segunda configuración (*My2ndApp*) utiliza las *funciones de escritura, copia en disco* y *recuperación multicuenta*:

```
{
        "MyApp:Test:MyAllowListConfiguration": {},
        
        "My2ndApp:Beta:MyEnableMobilePaymentsFeatureFlagConfiguration": {
            "credentials": {
                "roleArn": "arn:aws:us-west-1:iam::123456789012:role/MyTestRole",
                "roleExternalId": "00b148e2-4ea4-46a1-ab0f-c422b54d0aac",
                "roleSessionName": "AwsAppConfigAgent",
                "credentialsDuration": "2h"
            },
            "writeTo": {
                "path": "/tmp/aws-appconfig/my-2nd-app/beta/my-enable-payments-feature-flag-configuration.json"
            }
        }
    }
```

**Cómo proporcionar un manifiesto de agente**  
Puede almacenar el manifiesto como un archivo en una ubicación donde el AWS AppConfig agente pueda leerlo. O bien, puede almacenar el manifiesto como una AWS AppConfig configuración y dirigir al agente hacia él. Cómo proporcionar un manifiesto de agente, debe configurar una variable de entorno de `MANIFEST` con uno de los siguientes valores:


****  

| Ubicación del manifiesto | Valor de variable de entorno | Caso de uso | 
| --- | --- | --- | 
|  Archivos  |  archivo:/path/to/agent-manifest.json  |  Use este método si su manifiesto no va a cambiar con frecuencia.  | 
|  AWS AppConfig configuración  |  *application-name*:*environment-name*:*configuration-name*  |  Utilice este método para las actualizaciones dinámicas. Puede actualizar e implementar un manifiesto almacenado AWS AppConfig como configuración del mismo modo que almacena otras AWS AppConfig configuraciones.  | 
|  Variable de entorno  |  Contenido del manifiesto (JSON)  |  Use este método si su manifiesto no va a cambiar con frecuencia. Este método resulta útil en entornos de contenedor donde es más fácil configurar una variable de entorno que exponer un archivo.  | 

Para obtener más información sobre cómo configurar las variables para el AWS AppConfig agente, consulte el tema correspondiente a su caso de uso:
+ [Configuración de la extensión AWS AppConfig Agent Lambda](appconfig-integration-lambda-extensions-config.md)
+ [Uso de AWS AppConfig Agent con Amazon EC2](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-ec2.html#appconfig-integration-ec2-configuring)
+ [Uso de AWS AppConfig Agent con Amazon ECS y Amazon EKS](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-containers-agent.html#appconfig-integration-containers-agent-configuring)

# Configurar el AWS AppConfig agente para recuperar las configuraciones de varias cuentas
<a name="appconfig-agent-how-to-use-additional-features-multi-account"></a>

Puede configurar el AWS AppConfig agente para que recupere configuraciones de varias de ellas Cuentas de AWS introduciendo las anulaciones de credenciales en el manifiesto del AWS AppConfig agente. Las *anulaciones de credenciales* incluyen el nombre de recurso de Amazon (ARN) de una función AWS Identity and Access Management (IAM), un ID de función, un nombre de sesión y la duración del tiempo que el agente puede asumir la función. 

Introduzca estos detalles en la sección de credenciales del manifiesto. La sección de credenciales utiliza el siguiente formato:

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

A continuación se muestra un ejemplo:

```
{
    "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 una configuración, el agente lee los detalles de las credenciales de la configuración del manifiesto y, a continuación, asume el rol de IAM especificado para esa configuración. Puede especificar un conjunto diferente de anulaciones de credenciales para diferentes configuraciones en un solo manifiesto. En el siguiente diagrama, se muestra cómo el AWS AppConfig agente, mientras se ejecuta en la cuenta A (la cuenta de recuperación), asume funciones distintas especificadas para las cuentas B y C (las cuentas del proveedor) y, a continuación, llama a la operación de la [GetLatestConfiguration](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_appconfigdata_GetLatestConfiguration.html)API para recuperar los datos de AWS AppConfig configuración que se ejecutan en esas cuentas:

![\[Cómo trabaja el AWS AppConfig agente con las funciones de IAM por separado. Cuentas de AWS\]](http://docs.aws.amazon.com/es_es/appconfig/latest/userguide/images/agent multi-account.png)


## Configuración de permisos para recuperar los datos de configuración de cuentas de proveedor
<a name="appconfig-agent-how-to-use-additional-features-multi-account-permission"></a>

AWS AppConfig El agente que se ejecuta en la cuenta de recuperación necesita permiso para recuperar los datos de configuración de las cuentas del proveedor. Para conceder el permiso al agente, debe crear un rol AWS Identity and Access Management (IAM) en cada una de las cuentas de los proveedores. AWS AppConfig El agente de la cuenta de recuperación asume esta función para obtener datos de las cuentas de los proveedores. Complete los procedimientos de esta sección para crear una política de permisos de IAM, un rol de IAM y agregar anulaciones de agente al manifiesto.

**Antes de empezar**  
Recopile la siguiente información antes de crear una política de permisos y un rol en IAM.
+ El IDs para cada uno Cuenta de AWS. La cuenta de *recuperación* es la cuenta que llamará a otras cuentas para obtener datos de configuración. Las cuentas de *proveedor* son las cuentas que venderán datos de configuración a la cuenta de recuperación.
+ El nombre de la función de IAM utilizada AWS AppConfig en la cuenta de recuperación. Esta es una lista de las funciones que utilizan AWS AppConfig, de forma predeterminada:
  + En el caso de Amazon Elastic Compute Cloud (Amazon EC2) AWS AppConfig , utiliza el rol de instancia.
  + Para AWS Lambda, AWS AppConfig utiliza la función de ejecución Lambda.
  + Para Amazon Elastic Container Service (Amazon ECS) y Amazon Elastic Kubernetes Service (Amazon AWS AppConfig EKS), utiliza la función de contenedor.

  Si ha configurado el AWS AppConfig agente para que utilice un rol de IAM diferente especificando la variable de `ROLE_ARN` entorno, anote ese nombre.

**Creación de la política de permisos**  
Utilice el siguiente procedimiento para crear una política de permisos mediante la consola de IAM. Complete el procedimiento de cada uno Cuenta de AWS de ellos para enviar los datos de configuración de la cuenta de recuperación.

**Para crear una política de IAM**

1. Inicie sesión Consola de administración de AWS en una cuenta de proveedor.

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Políticas** y, a continuación, **Crear política**.

1. Elija la opción **JSON**.

1. Elija **Editor de políticas** y sustituya el JSON predeterminado por la siguiente instrucción de política. Actualiza cada una *example resource placeholder* con los detalles de la cuenta del proveedor.

------
#### [ 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"
           }
       ]
   }
   ```

------

   A continuación se muestra un ejemplo:

------
#### [ 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. Elija **Siguiente**.

1. En el campo **Nombre de la política** escriba un nombre.

1. (Opcional) En **Agregar etiquetas**, agregue uno o varios pares de valor etiqueta-clave para organizar, realizar un seguimiento o controlar el acceso a esta política.

1. Elija **Crear política**. El sistema le devuelve a la página **Policies (Políticas)**.

1. Repita este procedimiento en cada una de las Cuenta de AWS que vendan los datos de configuración de la cuenta de recuperación.

**Creación del rol de IAM**  
Utilice el siguiente procedimiento para crear un rol de IAM mediante la consola de IAM. Complete el procedimiento de cada una de ellas para Cuenta de AWS vender los datos de configuración de la cuenta de recuperación.

**Cómo crear un rol de IAM**

1. Inicie sesión Consola de administración de AWS en una cuenta de proveedor.

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/).

1. En el panel de navegación, seleccione **Roles** y luego seleccione **Crear política**.

1. En **Tipo de entidad de confianza**, elija **Cuenta de AWS**.

1. En la sección **Cuenta de AWS**, elija **Otra Cuenta de AWS**.

1. En el campo **ID de cuenta**, introduzca el ID de la cuenta de recuperación.

1. (Opcional) Como práctica recomendada de seguridad para este supuesto rol, seleccione **Requerir ID externo** e introduzca una cadena.

1. Elija **Siguiente**.

1. En la página **Agregar permisos**, utilice el campo **Buscar** para localizar la política que creó en el procedimiento anterior. Seleccione la casilla de verificación situada junto a su nombre. 

1. Elija **Siguiente**.

1. En **Role name (Nombre de rol)**, escriba un nombre.

1. (Opcional) En **Description (Descripción)**, introduzca una descripción.

1. En **Paso 1: seleccionar entidades de confianza**, elija **Editar**. Reemplace la política de confianza JSON predeterminada por la siguiente política. Actualiza cada una *example resource placeholder* con la información de tu cuenta de recuperación.

------
#### [ 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) En **Tags** (Etiquetas), agregue uno o varios pares de valor etiqueta-clave para organizar, realizar un seguimiento o controlar el acceso a este rol.

1. Elija **Create role**. El sistema le devuelve a la página **Roles**.

1. Busque el rol que acaba de crear. Elíjalo. En la sección **ARN**, copie el ARN. Especificará esta información en el siguiente procedimiento.

**Agregación de anulaciones de credenciales al manifiesto**  
Tras crear el rol de IAM en su cuenta de proveedor, actualice el manifiesto en la cuenta de recuperación. En concreto, agregue el bloque de credenciales y el ARN del rol de IAM para recuperar los datos de configuración de la cuenta de proveedor. Este es el 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" 
        }
    }
}
```

A continuación se muestra un ejemplo:

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

**Cómo validar que la recuperación de varias cuentas esté funcionando**  
Puede comprobar que ese agente puede recuperar los datos de configuración de varias cuentas consultando los registros del AWS AppConfig agente. El registro de nivel `INFO` de los datos iniciales recuperados de “`YourApplicationName`:`YourEnvironmentName`:`YourConfigurationName`” es el mejor indicador de que las recuperaciones se han realizado correctamente. Si las recuperaciones fallan, debería ver un registro de nivel `ERROR` que indique el motivo del error. A continuación, se muestra un ejemplo de una recuperación de una cuenta de proveedor realizada correctamente:

```
[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
```

# Configurar el AWS AppConfig agente para escribir copias de la configuración en el disco
<a name="appconfig-agent-how-to-use-additional-features-write-to-disk"></a>

Puede configurar el AWS AppConfig agente para que almacene automáticamente una copia de una configuración en el disco en texto plano. Esta característica permite a los clientes con aplicaciones que leen los datos de configuración del disco integrarse con AWS AppConfig.

Esta función no está diseñada para usarse como función de respaldo de la configuración. AWS AppConfig no lee los archivos de configuración copiados en el disco. Si desea hacer una copia de seguridad de las configuraciones en disco, consulte las variables de `PRELOAD_BACKUP` entorno de [Uso del AWS AppConfig agente con Amazon EC2](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-ec2.html#appconfig-integration-ec2-configuring) o [Uso del AWS AppConfig agente con Amazon ECS `BACKUP_DIRECTORY` y Amazon EKS](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-containers-agent.html#appconfig-integration-containers-agent-configuring).

**aviso**  
Tenga en cuenta la siguiente información importante sobre esta característica:  
Las configuraciones guardadas en el disco se almacenan en *texto sin formato* y son legibles por humanos. No habilite esta característica para configuraciones que incluyan datos confidenciales. 
Esta característica escribe en el disco local. Utilice el principio de privilegio mínimo para los permisos del sistema de archivos. Para obtener más información, consulte [Implementación del acceso a los privilegios mínimos](appconfig-security.md#appconfig-security-least-privilege-access).

**Cómo habilitar escribir la copia de configuración en el disco**

1. Edite el manifiesto.

1. Elija la configuración que desee AWS AppConfig escribir en el disco y añada un `writeTo` elemento. A continuación se muestra un ejemplo:

   ```
   {
       "application_name:environment_name:configuration_name": {
           "writeTo": {
               "path": "path_to_configuration_file"
           }
       }
   }
   ```

   A continuación se muestra un ejemplo:

   ```
   {
       "MyTestApp:MyTestEnvironment:MyNewConfiguration": {
           "writeTo": {
               "path": "/tmp/aws-appconfig/mobile-app/beta/enable-mobile-payments"
           }
       }
   }
   ```

1. Guarde los cambios. El archivo configuration.json se actualizará cada vez que se implementen nuevos datos de configuración.

**Cómo validar que escribir la copia de configuración en el disco funciona**  
Para comprobar si se están grabando copias de una configuración en el disco, consulte los registros del AWS AppConfig agente. La entrada de `INFO` registro con la frase «INFO escribió la configuración '*application*:*environment*:*configuration*' to*file\$1path*» indica que el AWS AppConfig agente escribe copias de la configuración en el disco.

A continuación se muestra un ejemplo:

```
[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 'MobileApp:Beta:EnableMobilePayments' in XX.Xms
[appconfig agent] 2023/11/13 17:05:49 INFO wrote configuration 'MobileApp:Beta:EnableMobilePayments' to /tmp/configs/your-app/your-env/your-config.json
```