Funções de serviço da IAM - Amazon EBS

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

Funções de serviço da IAM

Uma função AWS Identity and Access Management (IAM) é semelhante à de um usuário, pois é uma AWS identidade com políticas de permissões que determinam o que a identidade pode ou não fazer AWS. No entanto, em vez de ser exclusivamente associada a uma pessoa, o propósito do perfil é ser assumido por qualquer pessoa que precisar dele. Uma função de serviço é uma função que um AWS serviço assume para realizar ações em seu nome. Como um serviço que executa as operações de backup para você, o Amazon Data Lifecycle Manager exige que você atribua uma função a ele ao executar operações de política para você. Para obter mais informações sobre funções do IAM, consulte Funções do IAM no Guia do usuário do IAM.

A função que você passa para o Amazon Data Lifecycle Manager deve ter uma política do IAM com as permissões que possibilitam que o Amazon Data Lifecycle Manager execute ações associadas a operações de política, como criar snapshots e AMIs, copiar snapshots e AMIs, excluir snapshots e cancelar o registro de AMIs. Diferentes permissões são necessárias para cada um dos tipos de política do Amazon Data Lifecycle Manager. A função também deve ter o Amazon Data Lifecycle Manager listado como uma entidade confiável, o que permite que o Amazon Data Lifecycle Manager assuma a função.

Funções de serviço padrão para o Amazon Data Lifecycle Manager

O Amazon Data Lifecycle Manager usa as seguintes funções de serviço padrão:

  • AWSDataLifecycleManagerDefaultRole—função padrão para gerenciar instantâneos. Ele confia apenas no serviço dlm.amazonaws.com para assumir a função e permite que o Amazon Data Lifecycle Manager execute as ações exigidas pelas políticas de cópia de snapshot e de snapshot entre contas em seu nome. Essa função usa a política AWSDataLifecycleManagerServiceRole AWS gerenciada.

    nota

    O formato do ARN da função é diferente dependendo se ela foi criada usando o console ou a AWS CLI. Se a função foi criada usando o console, o formato do ARN é arn:aws:iam::account_id:role/service-role/AWSDataLifecycleManagerDefaultRole. Se a função foi criada usando o AWS CLI, o formato ARN é. arn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRole

  • AWSDataLifecycleManagerDefaultRoleForAMIManagement—função padrão para gerenciar AMIs. Ela confia apenas no serviço dlm.amazonaws.com para assumir a função e permite que o Amazon Data Lifecycle Manager execute as ações exigidas pelas políticas de AMI apoiadas pelo EBS para você. Essa função usa a política AWSDataLifecycleManagerServiceRoleForAMIManagement AWS gerenciada.

Se você estiver usando o console do Amazon Data Lifecycle Manager, o Amazon Data Lifecycle Manager AWSDataLifecycleManagerDefaultRolecria automaticamente a função de serviço na primeira vez que você cria uma política de cópia de snapshot ou de snapshot entre contas, e cria automaticamente a função de serviço na primeira vez que você AWSDataLifecycleManagerDefaultRoleForAMIManagementcria uma política de AMI apoiada pelo EBS.

Se não estiver usando o console, será possível criar as funções de serviço manualmente usando o comando create-default-role. Para--resource-type, especifique snapshot para criar AWSDataLifecycleManagerDefaultRole ou image criar AWSDataLifecycleManagerDefaultRoleForAMIManagement.

$ aws dlm create-default-role --resource-type snapshot|image

Se você excluir essa função de serviço padrão e precisar criá-la novamente, poderá usar esse mesmo processo para recriar a função em sua conta.

Funções de serviço personalizadas para o Amazon Data Lifecycle Manager

Como alternativa ao uso das funções de serviço padrão, é possível criar funções do IAM personalizadas com as permissões necessárias e selecioná-las ao criar uma política de ciclo de vida.

Para criar uma função do IAM personalizada
  1. Crie funções com as seguintes permissões.

    • Permissões necessárias para gerenciar políticas de ciclo de vida de snapshot

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateSnapshot", "ec2:CreateSnapshots", "ec2:DeleteSnapshot", "ec2:DescribeInstances", "ec2:DescribeVolumes", "ec2:DescribeSnapshots", "ec2:EnableFastSnapshotRestores", "ec2:DescribeFastSnapshotRestores", "ec2:DisableFastSnapshotRestores", "ec2:CopySnapshot", "ec2:ModifySnapshotAttribute", "ec2:DescribeSnapshotAttribute", "ec2:ModifySnapshotTier", "ec2:DescribeSnapshotTierStatus" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*::snapshot/*" }, { "Effect": "Allow", "Action": [ "events:PutRule", "events:DeleteRule", "events:DescribeRule", "events:EnableRule", "events:DisableRule", "events:ListTargetsByRule", "events:PutTargets", "events:RemoveTargets" ], "Resource": "arn:aws:events:*:*:rule/AwsDataLifecycleRule.managed-cwe.*" }, { "Effect": "Allow", "Action": [ "ssm:GetCommandInvocation", "ssm:ListCommands", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:SendCommand", "ssm:DescribeDocument", "ssm:GetDocument" ], "Resource": [ "arn:aws:ssm:*:*:document/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/DLMScriptsAccess": "true" } } }, { "Effect": "Allow", "Action": [ "ssm:SendCommand", "ssm:DescribeDocument", "ssm:GetDocument" ], "Resource": [ "arn:aws:ssm:*::document/*" ] }, { "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringNotLike": { "aws:ResourceTag/DLMScriptsAccess": "false" } } } ] }
    • Permissões necessárias para gerenciar políticas de ciclo de vida da AMI

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:CreateTags", "Resource": [ "arn:aws:ec2:*::snapshot/*", "arn:aws:ec2:*::image/*" ] }, { "Effect": "Allow", "Action": [ "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeImageAttribute", "ec2:DescribeVolumes", "ec2:DescribeSnapshots" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:DeleteSnapshot", "Resource": "arn:aws:ec2:*::snapshot/*" }, { "Effect": "Allow", "Action": [ "ec2:ResetImageAttribute", "ec2:DeregisterImage", "ec2:CreateImage", "ec2:CopyImage", "ec2:ModifyImageAttribute" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:EnableImageDeprecation", "ec2:DisableImageDeprecation" ], "Resource": "arn:aws:ec2:*::image/*" } ] }

    Para obter mais informações, consulte Criar uma função no Guia do usuário do IAM.

  2. Adicione uma relação de confiança às funções.

    1. No console do IAM, selecione Roles (Funções).

    2. Selecione a função que você criou e, em seguida, escolha Relações de confiança.

    3. Escolha Edit Trust Relationship (Editar relação de confiança), adicione a seguinte política e, em seguida, escolha Update Trust Policy (Atualizar política de confiança).

      { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "dlm.amazonaws.com" }, "Action": "sts:AssumeRole" }] }

      Recomendamos o uso das chaves de condição aws:SourceAccount e aws:SourceArn para se proteger contra O problema do agente confuso. Por exemplo, é possívelria adicionar o bloco de condições a seguir na política de confiança anterior. A aws:SourceAccount é a proprietária da política de ciclo de vida e o aws:SourceArn é o ARN da política de ciclo de vida. Se você não souber o ID da política de ciclo de vida, poderá substituir essa parte do ARN por um curinga (*) e atualizar a política após criar a política de ciclo de vida.

      "Condition": { "StringEquals": { "aws:SourceAccount": "account_id" }, "ArnLike": { "aws:SourceArn": "arn:partition:dlm:region:account_id:policy/policy_id" } }