Création d'un rôle pour déléguer des autorisations à un IAM utilisateur - AWS Gestion de l’identité et des accès

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.

Création d'un rôle pour déléguer des autorisations à un IAM utilisateur

Vous pouvez utiliser IAM des rôles pour déléguer l'accès à votre AWS ressources. Grâce aux IAM rôles, vous pouvez établir des relations de confiance entre votre compte fiduciaire et d'autres AWS comptes fiables. Le compte d'approbation est propriétaire des ressources auxquelles les utilisateurs ont accès , tandis que le compte approuvé contient les utilisateurs devant accéder aux ressources. Toutefois, il est possible qu'un autre compte détienne une ressource dans votre compte. Par exemple, le compte de confiance peut autoriser le compte approuvé à créer de nouvelles ressources, telles que la création de nouveaux objets dans un compartiment Amazon S3. Dans ce cas, le compte qui crée la ressource la détient et contrôle les personnes pouvant y accéder.

Après avoir créé la relation de confiance, un IAM utilisateur ou une application du compte sécurisé peut utiliser le AWS Security Token Service (AWS STS) AssumeRoleAPIopération. Cette opération fournit des informations d'identification de sécurité temporaires qui permettent d'accéder à AWS ressources de votre compte.

Les deux comptes peuvent être contrôlés par vous-même, ou le compte contenant les utilisateurs peut être contrôlé par un tiers. Si l'autre compte des utilisateurs est un Compte AWS que vous ne contrôlez pas, alors vous pouvez utiliser l'externalIdattribut. L'ID externe peut être n'importe quel mot ou nombre convenu avec l'administrateur du compte tiers. Cette option ajoute automatiquement une condition à la politique d'approbation. Cette condition permet à l'utilisateur d'endosser le rôle uniquement si la demande inclut l'élément approprié sts:ExternalID. Pour de plus amples informations, veuillez consulter Accès à des Comptes AWS sites appartenant à des tiers.

Pour plus d'informations sur la façon d'utiliser les rôles pour déléguer des autorisations, consultez Termes et concepts relatifs aux rôles. Pour en savoir plus sur l'utilisation d'un rôle de service afin de permettre aux services l'accès aux ressources de votre compte, consultez Création d'un rôle pour déléguer des autorisations à un AWS service.

Création d'un rôle IAM (console)

Vous pouvez utiliser le plugin AWS Management Console pour créer un rôle qu'un IAM utilisateur peut assumer. Supposons, par exemple, que votre organisation possède plusieurs Comptes AWS pour isoler un environnement de développement d'un environnement de production. Pour des informations générales sur la création d'un rôle autorisant les utilisateurs du compte de développement à accéder aux ressources du compte de production, consultez Exemple de scénario utilisant des comptes de développement et de production distincts.

Autorisations minimales

Pour effectuer les étapes suivantes, vous devez disposer au moins des IAM autorisations suivantes :

  • access-analyzer:ValidatePolicy

  • iam:AttachRolePolicy

  • iam:CreatePolicy

  • iam:CreateRole

  • iam:GetAccountSummary

  • iam:GetPolicy

  • iam:GetPolicyVersion

  • iam:GetRole

  • iam:ListAccountAliases

  • iam:ListAttachedRolePolicies

  • iam:ListOpenIDConnectProviders

  • iam:ListPolicies

  • iam:ListRolePolicies

  • iam:ListRoles

  • iam:ListRoleTags

  • iam:ListSAMLProviders

Pour créer un rôle (console)
  1. Connectez-vous au AWS Management Console et ouvrez la IAM console à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le panneau de navigation de la console, choisissez Rôles, puis Créer un rôle.

  3. Choisissez Compte AWStype de rôle.

  4. Pour créer un rôle pour votre compte, choisissez This account (Ce compte). Pour créer un rôle pour un autre compte, choisissez Another Compte AWSet entrez l'ID de compte auquel vous souhaitez accorder l'accès à vos ressources.

    L'administrateur du compte spécifié peut autoriser n'importe quel IAM utilisateur de ce compte à assumer ce rôle. Pour ce faire, l'administrateur attache une politique à l'utilisateur ou à un groupe qui donne l'autorisation pour l'action sts:AssumeRole. Cette politique doit spécifier que le ARN rôle est leResource.

  5. Si vous accordez des autorisations aux utilisateurs d'un compte que vous ne contrôlez pas et si les utilisateurs ont l'intention d'assumer ce rôle par programmation, alors sélectionnez Require external ID (Demander un ID externe). L'ID externe peut être n'importe quel mot ou nombre convenu avec l'administrateur du compte tiers. Cette option ajoute automatiquement une condition à la politique d'approbation. Cette condition permet à l'utilisateur d'endosser le rôle uniquement si la demande inclut l'élément approprié sts:ExternalID. Pour de plus amples informations, veuillez consulter Accès à des Comptes AWS sites appartenant à des tiers.

    Important

    Le choix de cette option restreint l'accès au rôle uniquement via le AWS CLI, Tools for Windows PowerShell, ou le AWS API. Cela est dû au fait que vous ne pouvez pas utiliser le AWS console pour passer à un rôle dont la politique de confiance est assortie d'une externalId condition. Cependant, vous pouvez créer ce type d'accès par programmation en écrivant un script ou une application utilisant le code approprié. SDK Pour plus d'informations et un exemple de script, consultez Comment activer l'accès multicompte au AWS Management Consoledans le AWS Blog sur la sécurité.

  6. Si vous souhaitez limiter le rôle aux utilisateurs qui se connectent à l'aide de l'authentification multifactorielle (MFA), sélectionnez Exiger MFA. Cela ajoute une condition à la politique de confiance du rôle qui vérifie la présence d'une MFA connexion. L'utilisateur qui souhaite assumer ce rôle doit se connecter à l'aide d'un mot de passe temporaire à usage unique depuis un MFA appareil configuré. Les utilisateurs non MFA authentifiés ne peuvent pas assumer ce rôle. Pour plus d'informations surMFA, voir AWS Authentification multifactorielle dans IAM

  7. Choisissez Suivant.

  8. IAMinclut une liste des AWS politiques gérées et gérées par le client dans votre compte. Sélectionnez la politique à utiliser pour la politique d'autorisations ou choisissez Créer une politique pour ouvrir un nouvel onglet de navigateur et créer une nouvelle politique de bout en bout. Pour de plus amples informations, veuillez consulter Création de IAM politiques. Une fois la politique créée, fermez cet onglet et revenez à l'onglet initial. Cochez la case en regard des politiques d'autorisations que vous souhaitez octroyer à toute personne endossant le rôle. Si vous préférez, vous pouvez ne sélectionner aucune stratégie pour le moment, puis les attacher au rôle ultérieurement. Par défaut, un rôle ne dispose d'aucune autorisation.

  9. (Facultatif) Définissez une limite d'autorisations. Il s'agit d'une fonctionnalité avancée.

    Ouvrez la section Set permissions boundary (Définir une limite d'autorisations) et choisissez Use a permissions boundary to control the maximum role permissions (Utiliser une limite d'autorisations pour contrôler le nombre maximum d'autorisations de rôle). Sélectionnez la politique à utiliser comme limite d'autorisations.

  10. Choisissez Suivant.

  11. Dans le champ Role name (Nom de rôle), saisissez un nom pour votre rôle. Les noms de rôles doivent être uniques dans votre Compte AWS. Lorsqu'un nom de rôle est utilisé dans une politique ou dans le cadre d'une politiqueARN, le nom du rôle distingue les majuscules et minuscules. Lorsque le nom d'un rôle apparaît aux clients dans la console, par exemple lors du processus de connexion, il n'est pas sensible à la casse. Différentes entités peuvent référencer le rôle et il n'est donc pas possible de modifier son nom après sa création.

  12. (Facultatif) Pour Description, saisissez une description pour le nouveau rôle.

  13. Choisissez Edit (Modifier) dans les sections Step 1: Select trusted entities (Étape 1 : sélection d'entités de confiance) ou Step 2: Add permissions (Étape 2 : ajouter des autorisations) pour modifier les cas d'utilisation et les autorisations pour le rôle. Vous serez renvoyé aux pages précédentes pour effectuer les modifications.

  14. (Facultatif) Ajoutez des métadonnées au rôle en associant les identifications sous forme de paires clé-valeur. Pour plus d'informations sur l'utilisation de balises dansIAM, consultezTags pour les AWS Identity and Access Management ressources.

  15. Passez en revue les informations du rôle, puis choisissez Créer un rôle.

    Important

    N'oubliez pas que ceci ne représente que la première moitié de la configuration requise. Vous devez également accorder aux utilisateurs individuels du compte approuvé des autorisations permettant de basculer vers le rôle dans la console ou d'endosser le rôle par programmation. Pour plus d'informations sur cette étape, consultez Accorder à un utilisateur l'autorisation de changer de rôle.

Création d'un IAM rôle (AWS CLI)

Création d'un rôle à partir du AWS CLI comporte plusieurs étapes. Lorsque vous utilisez la console pour créer un rôle, la plupart des étapes sont effectuées pour vous, mais avec le AWS CLI vous devez effectuer vous-même chaque étape de manière explicite. Vous devez créer le rôle et lui attribuer une politique d'autorisations. Vous pouvez également définir la limite d'autorisations pour votre rôle.

Pour créer un rôle d'accès entre comptes (AWS CLI)
  1. Créez un rôle : aws iam create-role

  2. Associez une politique d'autorisations gérées au rôle : aws iam attach-role-policy

    or

    Créez une politique d'autorisation intégrée pour le rôle : aws iam put-role-policy

  3. (Facultatif) Ajoutez des attributs personnalisés au rôle en associant des balises : aws iam tag-role

    Pour de plus amples informations, veuillez consulter Gestion des tags sur IAM les rôles (AWS CLI ou AWS API).

  4. (Facultatif) Définissez la limite des autorisations pour le rôle : aws iam put-role-permissions-boundary

    Une limite d'autorisations contrôle les autorisations maximum dont un rôle peut disposer. Les limites des autorisations sont avancées AWS fonction.

L'exemple suivant illustre les deux premières étapes les plus courantes pour créer un rôle entre comptes dans un environnement simple. Cet exemple permet à tout utilisateur du compte 123456789012 d'endosser le rôle et d'afficher le compartiment Amazon S3 example_bucket. Cet exemple suppose également que vous utilisiez un ordinateur client exécutant Windows et que vous ayez déjà configuré votre interface de ligne de commande à l'aide des informations d'identification et de la région de votre compte. Pour plus d'informations, voir Configuration du AWS Interface de ligne de commande.

Dans cet exemple, incluez la politique de confiance suivante dans la première commande lors de la création du rôle. Cette politique de confiance permet aux utilisateurs du 123456789012 compte d'assumer le rôle en utilisant l'AssumeRoleopération, mais uniquement s'ils fournissent une MFA authentification à l'aide des TokenCode paramètres SerialNumber et. Pour plus d'informations surMFA, voirAWS Authentification multifactorielle dans IAM.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "sts:AssumeRole", "Condition": { "Bool": { "aws:MultiFactorAuthPresent": "true" } } } ] }
Important

Si votre Principal élément contient le ARN pour un IAM rôle ou un utilisateur spécifique, celui-ci ARN est transformé en un identifiant principal unique lorsque la politique est enregistrée. Cela permet de réduire le risque d'escalade des autorisations par la suppression et la nouvelle création du rôle ou de l'utilisateur. Normalement, vous ne voyez pas cet identifiant dans la console car il y a également une transformation inverse vers le ARN moment où la politique de confiance est affichée. Toutefois, si vous supprimez le rôle ou l'utilisateur, l'ID principal apparaît dans la console car AWS ne peut plus le mapper à unARN. Par conséquent, si vous supprimez et recréez un utilisateur ou un rôle référencé dans l'Principalélément d'une politique de confiance, vous devez modifier le rôle pour remplacer leARN.

Lorsque vous utilisez la deuxième commande, vous devez attacher au rôle une politique gérée existante. La politique d'autorisations suivante permet à toute personne endossant le rôle d'exécuter uniquement l'action ListBucket sur le compartiment Amazon S3 example_bucket.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::example_bucket" } ] }

Pour créer ce rôle Test-UserAccess-Role, vous devez d'abord enregistrer la précédente politique de confiance avec le nom trustpolicyforacct123456789012.json dans le dossier policies de votre disque local C:. Enregistrez ensuite la politique d'autorisation précédente en tant que politique gérée par le client dans votre Compte AWS avec le nomPolicyForRole. Vous pouvez ensuite utiliser les commandes suivantes pour créer le rôle et attacher la politique gérée.

# Create the role and attach the trust policy file that allows users in the specified account to assume the role. $ aws iam create-role --role-name Test-UserAccess-Role --assume-role-policy-document file://C:\policies\trustpolicyforacct123456789012.json # Attach the permissions policy (in this example a managed policy) to the role to specify what it is allowed to do. $ aws iam attach-role-policy --role-name Test-UserAccess-Role --policy-arn arn:aws:iam::123456789012:policy/PolicyForRole
Important

N'oubliez pas que ceci ne représente que la première moitié de la configuration requise. Vous devez également accorder à des utilisateurs individuels du compte approuvé les autorisations permettant de changer de rôle. Pour plus d'informations sur cette étape, consultez Accorder à un utilisateur l'autorisation de changer de rôle.

Après avoir créé le rôle et lui avoir accordé les autorisations nécessaires AWS tâches ou accès AWS ressources, tous les utilisateurs du 123456789012 compte peuvent assumer le rôle. Pour de plus amples informations, veuillez consulter Basculer vers un IAM rôle (AWS CLI).

Création d'un IAM rôle (AWS API)

Création d'un rôle à partir du AWS APIcomporte plusieurs étapes. Lorsque vous utilisez la console pour créer un rôle, la plupart des étapes sont effectuées pour vous, mais API vous devez effectuer chaque étape vous-même de manière explicite. Vous devez créer le rôle et lui attribuer une politique d'autorisations. Vous pouvez également définir la limite d'autorisations pour votre rôle.

Pour créer un rôle dans le code (AWS API)
  1. Créez un rôle : CreateRole

    Vous pouvez spécifier un emplacement de fichier pour la politique d'approbation du rôle.

  2. Associez une politique d'autorisation gérée au rôle : AttachRolePolicy

    or

    Créez une politique d'autorisation intégrée pour le rôle : PutRolePolicy

    Important

    N'oubliez pas que ceci ne représente que la première moitié de la configuration requise. Vous devez également accorder à des utilisateurs individuels du compte approuvé les autorisations permettant de changer de rôle. Pour plus d'informations sur cette étape, consultez Accorder à un utilisateur l'autorisation de changer de rôle.

  3. (Facultatif) Ajoutez des attributs personnalisés à l'utilisateur en attachant des balises : TagRole

    Pour de plus amples informations, veuillez consulter Gestion des tags sur IAM les utilisateurs (AWS CLI ou AWS API).

  4. (Facultatif) Définissez la limite des autorisations pour le rôle : PutRolePermissionsBoundary

    Une limite d'autorisations contrôle les autorisations maximum dont un rôle peut disposer. Les limites des autorisations sont avancées AWS fonction.

Après avoir créé le rôle et lui avoir accordé les autorisations nécessaires AWS tâches ou accès AWS ressources, vous devez accorder des autorisations aux utilisateurs du compte pour leur permettre d'assumer le rôle. Pour plus d'informations sur l'endossement d'un rôle, consultez Basculer vers un IAM rôle (AWS API).

Création d'un IAM rôle (AWS CloudFormation)

Pour plus d'informations sur la création d'un IAM rôle dans AWS CloudFormation, consultez la référence sur les ressources et les propriétés et les exemples dans le AWS CloudFormation Guide de l'utilisateur.

Pour plus d'informations sur les IAM modèles dans AWS CloudFormation, voir AWS Identity and Access Management extraits de modèles dans le AWS CloudFormation Guide de l'utilisateur.