Fonctions du service IAM - Amazon EBS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fonctions du service IAM

Un rôle AWS Identity and Access Management (IAM) est similaire à un utilisateur, dans la mesure où il s'agit d'une AWS identité dotée de politiques d'autorisation qui déterminent ce que l'identité peut et ne peut pas faire. AWS En revanche, au lieu d’être associé de manière unique à une personne, un rôle est conçu pour être assumé par tout utilisateur qui en a besoin. Un rôle de service est un rôle qu'un AWS service assume pour effectuer des actions en votre nom. Amazon Data Lifecycle Manager étant le service qui effectue des opérations de sauvegarde en votre nom, vous devez lui transmettre un rôle à assumer lorsqu’il effectue des opérations de politique en votre nom. Pour plus d’informations sur les rôles IAM, consultez Rôles IAM dans le Guide de l’utilisateur IAM.

Le rôle que vous transmettez à Amazon Data Lifecycle Manager doit disposer d’une politique IAM avec les autorisations qui permettent à Amazon Data Lifecycle Manager d’effectuer des actions associées aux opérations de politique, telles que la création d’instantanés et d’AMI, la copie d’instantanés et d’AMI, la suppression d’instantanés et la désinscription d’AMI. Chaque type de politique Amazon Data Lifecycle Manager nécessite des autorisations différentes. Amazon Data Lifecycle Manager doit également être répertorié comme entité approuvée par le rôle, ce qui permet à Amazon Data Lifecycle Manager d’assumer ce rôle.

Fonctions du service par défaut pour Amazon Data Lifecycle Manager

Amazon Data Lifecycle Manager utilise les fonctions du service par défaut suivantes :

  • AWSDataLifecycleManagerDefaultRole: rôle par défaut pour la gestion des instantanés. Il ne fait confiance qu’au service dlm.amazonaws.com pour assumer ce rôle et il permet à Amazon Data Lifecycle Manager d’effectuer en votre nom les actions requises par les politiques d’instantané et de copie d’instantané inter-comptes. Ce rôle utilise la politique AWSDataLifecycleManagerServiceRole AWS gérée.

    Note

    Le format ARN du rôle diffère selon qu’il a été créé à l’aide de la console ou de l’ AWS CLI. Si le rôle a été créé à l’aide de la console, le format ARN est arn:aws:iam::account_id:role/service-role/AWSDataLifecycleManagerDefaultRole. Si le rôle a été créé à l'aide de AWS CLI, le format ARN estarn:aws:iam::account_id:role/AWSDataLifecycleManagerDefaultRole.

  • AWSDataLifecycleManagerDefaultRoleForAMIManagement: rôle par défaut pour la gestion des AMI. Il ne fait confiance qu’au service dlm.amazonaws.com pour assumer ce rôle et il permet à Amazon Data Lifecycle Manager d’effectuer en votre nom les actions requises par les politiques d’AMI EBS. Ce rôle utilise la politique AWSDataLifecycleManagerServiceRoleForAMIManagement AWS gérée.

Si vous utilisez la console Amazon Data Lifecycle Manager, Amazon Data Lifecycle Manager crée automatiquement le rôle de AWSDataLifecycleManagerDefaultRoleservice la première fois que vous créez une politique de capture instantanée ou de copie instantanée entre comptes, et crée automatiquement le rôle de AWSDataLifecycleManagerDefaultRoleForAMIManagementservice la première fois que vous créez une politique AMI basée sur EBS.

Si vous n’utilisez pas la console, vous pouvez créer manuellement les fonctions du service en utilisant la commande create-default-role (Créer un rôle par défaut). Pour--resource-type, spécifiez snapshot créer AWSDataLifecycleManagerDefaultRole ou image créer AWSDataLifecycleManagerDefaultRoleForAMIManagement.

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

Si vous supprimez les fonctions du service par défaut et que par la suite vous avez besoin de les recréer, vous pourrez utiliser la même procédure pour recréer les rôles dans votre compte.

Fonctions du service personnalisées pour Amazon Data Lifecycle Manager

Vous pouvez également choisir de créer des rôles IAM personnalisés possédant les autorisations requises et les sélectionner lors de la création d’une politique de cycle de vie, comme alternative aux fonctions du service par défaut.

Pour créer un rôle IAM personnalisé
  1. Créez des rôles avec les autorisations suivantes.

    • Autorisations requises pour la gestion des politiques de cycle de vie des instantanés

      { "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" } } } ] }
    • Autorisations pour la gestion des politiques de cycle de vie des 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/*" } ] }

    Pour plus d’informations, consultez Création d’un rôle dans le IAM Guide de l’utilisateur.

  2. Ajoutez une relation d’approbation aux rôles.

    1. Dans la console IAM, choisissez Rôles.

    2. Sélectionnez les rôles que vous avez créés, puis sélectionnez Trust relationships (Relations d’approbation).

    3. Choisissez Modifier la relation d’approbation, ajoutez la stratégie suivante, puis choisissez Mettre à jour la stratégie d’approbation.

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

      Nous vous recommandons d’utiliser les clés de condition aws:SourceAccount et aws:SourceArn pour vous protéger contre le problème du député confus. Par exemple, vous pouvez ajouter le bloc de condition suivant à la stratégie d’approbation précédente. aws:SourceAccount est propriétaire de la politique de cycle de vie et aws:SourceArn est l’ARN de la politique de cycle de vie. Si vous ne connaissez pas l’ID de politique de cycle de vie, vous pouvez remplacer cette partie de l’ARN par un caractère générique (*), puis mettre à jour la politique d’approbation après avoir créé la politique de cycle de vie.

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