Crie uma função do IAM personalizada para o Session Manager
É possível criar um perfil do AWS Identity and Access Management (IAM) que conceda ao Session Manager a permissão para realizar ações em suas instâncias gerenciadas do Amazon EC2. Você também pode incluir uma política para conceder as permissões necessárias para que os logs da sessão sejam enviados ao Amazon Simple Storage Service (Amazon S3) e ao Amazon CloudWatch Logs.
Depois de criar o perfil do IAM, para obter informações sobre como anexar o perfil a uma instância consulte Anexar ou substituir um perfil de instância
Tópicos
Crie uma função do IAM com permissões mínimas do Session Manager (console)
Use o procedimento a seguir para criar uma função do IAM personalizada com uma política que fornece permissões somente para ações do Session Manager em suas instâncias.
Para criar um perfil de instância com permissões mínimas do Session Manager (console)
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação, selecione Políticas e, em seguida, Criar política. (Se aparecer um botão Get Started (Iniciar), selecione-o e, em seguida, clique em Create Policy (Criar política).
-
Selecione a guia JSON.
-
Substitua o conteúdo padrão pela política a seguir. Para criptografar os dados de sessão usando o AWS Key Management Service (AWS KMS), substitua
key-name
pelo nome do recurso da Amazon (ARN) da AWS KMS key que você deseja usar.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:UpdateInstanceInformation", "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "
key-name
" } ] }Para obter informações sobre como usar uma chave KMS para criptografar dados de sessão, consulte Ativar a criptografia de chaves do KMS de dados de sessão (console).
Se você não or usar a criptografia do AWS KMS para sua sessão de dados, poderá remover o seguinte conteúdo da política:
, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "
key-name
" } -
Escolha Próximo: etiquetas.
-
(Opcional) Adicione tags escolhendo Add tag (Adicionar tag) e inserindo as tags preferenciais para a política.
-
Selecione Next: Review (Próximo: revisar).
-
Na página Revisar política, em Nome, digite um nome para a política em linha, como
SessionManagerPermissions
. -
(Opcional) Em Descrição, digite uma descrição para a política.
-
Escolha Criar política.
-
No painel de navegação, escolha Perfis e Criar perfil.
-
Na página Criar perfil, escolha Serviço da AWS e, para Caso de uso, escolha EC2.
-
Escolha Próximo.
-
Na página Add permissions (Adicionar políticas), marque a caixa de seleção à esquerda do nome da política que acabou de criar, por exemplo,
SessionManagerPermissions
. -
Escolha Próximo.
-
Na página Name, review, and create (Nomear, revisar e criar), em Role name (Nome da função), digite um nome para a função do IAM, por exemplo,
MySessionManagerRole
. -
(Opcional) Em Role description (Descrição da função), digite uma descrição para o perfil de instância.
-
(Opcional) Adicione tags escolhendo Add tag (Adicionar tag) e inserindo as tags preferenciais para a função.
Selecione Criar função.
Para obter informações sobre as ações ssmmessages
, consulte Referência: ec2messages, ssmmessages e outras operações da API.
Crie uma função do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console)
Use o procedimento a seguir para criar uma função do IAM personalizada com uma política que fornece permissões para ações do Session Manager em suas instâncias. A política também fornece as permissões necessárias para que logs de sessão sejam armazenados em buckets do Amazon Simple Storage Service (Amazon S3) e em grupos de logs do Amazon CloudWatch Logs.
Importante
Para gerar logs de sessão em um bucket do Amazon S3 que pertença a outra Conta da AWS, você deve adicionar a permissão do IAM s3:PutObjectAcl
à política de perfil do IAM. Além disso, é necessário garantir que a política do bucket conceda acesso entre contas ao perfil do IAM usado pela conta proprietária para conceder permissões do Systems Manager para instâncias gerenciadas. Se o bucket usar a criptografia do Key Management Service (KMS), a política do KMS do bucket também deverá conceder esse acesso entre contas. Para obter mais informações sobre como configurar permissões de bucket entre contas no Amazon S3, consulte Granting cross-account bucket permissions no Guia do usuário do Amazon Simple Storage Service. Se as permissões entre contas não forem adicionadas, a conta que possui o bucket do Amazon S3 não poderá acessar os logs de saída da sessão.
Para obter informações sobre como especificar as preferências para armazenar logs de sessão, consulte Habilitar e desabilitar o registro em log de sessão.
Para criar uma função do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console)
Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/
. -
No painel de navegação, selecione Políticas e, em seguida, Criar política. (Se aparecer um botão Get Started (Iniciar), selecione-o e, em seguida, clique em Create Policy (Criar política).
-
Selecione a guia JSON.
-
Substitua o conteúdo padrão pela política a seguir. Substitua cada
espaço reservado para recurso de exemplo
por suas próprias informações.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssmmessages:CreateControlChannel", "ssmmessages:CreateDataChannel", "ssmmessages:OpenControlChannel", "ssmmessages:OpenDataChannel", "ssm:UpdateInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/
s3-prefix
/*" }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "key-name
" }, { "Effect": "Allow", "Action": "kms:GenerateDataKey", "Resource": "*" } ] } -
Escolha Próximo: etiquetas.
-
(Opcional) Adicione tags escolhendo Add tag (Adicionar tag) e inserindo as tags preferenciais para a política.
-
Selecione Next: Review (Próximo: revisar).
-
Na página Revisar política, em Nome, digite um nome para a política em linha, como
SessionManagerPermissions
. -
(Opcional) Em Descrição, digite uma descrição para a política.
-
Escolha Criar política.
-
No painel de navegação, escolha Perfis e Criar perfil.
-
Na página Criar perfil, escolha Serviço da AWS e, para Caso de uso, escolha EC2.
-
Escolha Próximo.
-
Na página Add permissions (Adicionar políticas), marque a caixa de seleção à esquerda do nome da política que acabou de criar, por exemplo,
SessionManagerPermissions
. -
Escolha Próximo.
-
Na página Name, review, and create (Nomear, revisar e criar), em Role name (Nome da função), digite um nome para a função do IAM, por exemplo,
MySessionManagerRole
. -
(Opcional) Em Role description (Descrição da função), digite uma descrição para a função.
-
(Opcional) Adicione tags escolhendo Add tag (Adicionar tag) e inserindo as tags preferenciais para a função.
-
Selecione Criar função.