Preferencia de credenciales del agente de CloudWatch - Amazon CloudWatch

Preferencia de credenciales del agente de CloudWatch

En esta sección se describe la cadena de proveedores de credenciales que el agente de CloudWatch utiliza para obtener las credenciales al comunicarse con otros servicios y API de AWS. El orden es el siguiente:

nota

Las preferencias que aparecen en los números del dos a cinco siguen el mismo orden de preferencia definido en el AWS SDK. Para obtener más información, consulte Specifying Credentials en la documentación del SDK.

  1. Archivos de configuración y credenciales compartidos tal y como se definen en el archivo common-config.toml del agente de CloudWatch. Para obtener más información, consulte (Opcional) Modifique la configuración común para la información del proxy o de la región.

  2. Variables de entorno del SDK de AWS

    importante

    En Linux, si ejecuta el agente de CloudWatch mediante el script amazon-cloudwatch-agent-ctl, el script inicia el agente como un servicio systemd. En este caso, el agente no puede acceder a variables de entorno como HOME, AWS_ACCESS_KEY_ID y AWS_SECRET_ACCESS_KEY.

  3. Archivos de configuración y credenciales compartidos que se encuentran en $HOME/%USERPROFILE%

    nota

    El agente de CloudWatch busca .aws/credentials en $HOME para Linux y macOS y busca en %USERPROFILE% para Windows. A diferencia del SDK de AWS, el agente de CloudWatch no tiene métodos alternativos para determinar el directorio principal si no se puede acceder a las variables de entorno. Esta diferencia de comportamiento sirve para mantener la compatibilidad con versiones anteriores del SDK de AWS.

    Además, a diferencia de las credenciales compartidas que se encuentran en common-config.toml, si las credenciales compartidas derivadas del SDK de AWS caducan y se rotan, el agente de CloudWatch no recogerá automáticamente las credenciales renovadas y será necesario reiniciar el agente para hacerlo.

  4. Un rol de AWS Identity and Access Management para tareas si hay una aplicación presente que utiliza una definición de tarea de Amazon Elastic Container Service o una operación de API RunTask.

  5. un perfil de instancias adjunto a una instancia de Amazon EC2

Como práctica recomendada, le recomendamos que especifique las credenciales en el orden siguiente cuando utilice el agente de CloudWatch.

  1. Utilice roles de IAM para las tareas si su aplicación utiliza una definición de tarea de Amazon Elastic Container Service o una operación de la API RunTask.

  2. Utilice roles de IAM si su aplicación se ejecuta en una instancia de Amazon EC2.

  3. Utilice el archivo common-config.toml de agente de CloudWatch para especificar el archivo de credenciales. Este archivo de credenciales es el mismo que utilizan los demás SDK de AWS y la AWS CLI. Si ya está utilizando un archivo de credenciales compartido, también puede utilizarlo para este fin. Si lo proporciona mediante el archivo common-config.toml de agente de CloudWatch, se asegura de que el agente consumirá las credenciales rotadas cuando caduquen y se sustituirán sin necesidad de reiniciar el agente.

  4. Utilice variables de entorno. Configurar variables de entorno es útil si está realizando trabajos de desarrollo en una computadora que no sea una instancia de Amazon EC2.

nota

Si envía la telemetría a una cuenta diferente, como se explica en Envío de métricas, registros y seguimientos a una cuenta diferente, el agente de CloudWatch utilizará la cadena de proveedores de credenciales que se describe en esta sección para obtener el conjunto inicial de credenciales. A continuación, utiliza esas credenciales al asumir el rol de IAM especificado por role_arn en el archivo de configuración del agente de CloudWatch.