Preferência de credenciais do agente do CloudWatch
Esta seção descreve a cadeia de provedores de credenciais que o agente do CloudWatch usa para obter as credenciais ao se comunicar com outros serviços e APIs da AWS. A ordenação é a seguinte:
nota
As preferências listadas nos números dois a cinco seguem a mesma ordem de preferência conforme definido no AWS SDK. Para obter mais informações, consulte Specifying Credentials na documentação do SDK.
Arquivos de configuração e de credenciais compartilhados conforme definido no arquivo
common-config.toml
do agente CloudWatch. Para ter mais informações, consulte (Opcional) Modificar a configuração comum para informações de proxy ou região.Variáveis de ambiente do AWS SDK.
Importante
No Linux, se você executar o agente do CloudWatch usando o script
amazon-cloudwatch-agent-ctl
, o script iniciará o agente como um serviçosystemd
. Nesse caso, variáveis de ambiente comoHOME
,AWS_ACCESS_KEY_ID
eAWS_SECRET_ACCESS_KEY
não podem ser acessadas pelo agente.Arquivos de configuração e de credenciais compartilhados encontrados em
$HOME/%USERPROFILE%
.nota
O agente do CloudWatch procura
.aws/credentials
em$HOME
para os sistemas Linux e MacOS e procura em%USERPROFILE%
para o sistema Windows. Ao contrário do AWS SDK, o agente do CloudWatch não tem métodos alternativos para determinar o diretório inicial se as variáveis de ambiente estiverem inacessíveis. Essa diferença de comportamento visa manter a compatibilidade retroativa com implementações anteriores do AWS SDK.Além disso, ao contrário das credenciais compartilhadas encontradas em
common-config.toml
, se as credenciais compartilhadas derivadas do AWS SDK expirarem e forem alternadas, as credenciais renovadas não serão obtidas automaticamente pelo agente do CloudWatch e exigirão uma reinicialização do agente para fazer isso.Um perfil do AWS Identity and Access Management para tarefas, se houver uma aplicação que usa uma definição de tarefa do Amazon Elastic Container Service ou uma operação de API RunTask.
Um perfil de instância anexado a uma instância do Amazon EC2.
Como prática recomendada, sugerimos especificar as credenciais na ordem apresentada a seguir ao usar o agente do CloudWatch.
Use perfis do IAM para tarefas se sua aplicação usar uma definição de tarefa do Amazon Elastic Container Service ou uma operação de API RunTask.
Use perfis do IAM se sua aplicação for executada em uma instância do Amazon EC2.
Use o arquivo
common-config.toml
do agente do CloudWatch para especificar o arquivo de credenciais. Esse arquivo de credenciais é o mesmo usado por outros AWS SDKs e pela AWS CLI. Se já estiver usando um arquivo de credenciais compartilhadas, também poderá usá-lo para essa finalidade. Se você fornecê-lo ao usar o arquivocommon-config.toml
do agente do CloudWatch, garantirá que o agente consumirá credenciais rotacionadas quando elas expirarem e forem substituídas sem a necessidade de reiniciar o agente.Use variáveis de ambiente. Definir variáveis de ambiente é útil se você estiver realizando um trabalho de desenvolvimento em um computador que não seja uma instância do Amazon EC2.
nota
Se você enviar telemetria para uma conta diferente, conforme explicado em Envio de métricas, logs e rastreamentos a uma conta diferente, o agente do CloudWatch usará a cadeia de provedores de credenciais descrita nesta seção para obter o conjunto inicial de credenciais. Em seguida, ele usa essas credenciais ao assumir o perfil do IAM especificado por role_arn
no arquivo de configuração do agente do CloudWatch.