Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

Octroi d’autorisations à un utilisateur pour transférer un rôle à un service AWS

Mode de mise au point
Octroi d’autorisations à un utilisateur pour transférer un rôle à un service AWS - AWS Identity and Access Management

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.

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.

Pour configurer la plupart des services AWS, vous devez transférer un rôle IAM au service. Cela autorise le service à assumer ultérieurement le rôle et à effectuer des actions en votre nom. Pour la plupart des services, il vous suffit de transférer le rôle au service une fois au cours de la configuration, et non chaque fois que le service assume le rôle. Par exemple, supposons que vous avez une application s'exécutant sur une instance Amazon EC2. Cette application a besoin d'informations d'identification temporaires pour l'authentification et d'autorisations pour autoriser l'application à exécuter des actions dans AWS. Lorsque vous configurez l'application, vous devez transmettre un rôle à Amazon EC2 à utiliser avec l'instance qui fournit ces informations d'identification. Vous définissez les autorisations pour les applications s'exécutant sur l'instance en attachant une politique IAM au rôle. L'application endosse le rôle chaque fois qu'elle doit effectuer les actions qui sont autorisées par le rôle.

Pour transférer un rôle (et ses autorisations) à un service AWS, un utilisateur doit disposer des autorisations nécessaires pour transférer le rôle au service. Cela permet aux administrateurs de s'assurer que seuls les utilisateurs autorisés peuvent configurer un service avec un rôle qui accorde des autorisations. Pour permettre à un utilisateur de transférer un rôle à un service AWS, vous devez accorder l'autorisation PassRole à l'utilisateur IAM, au rôle ou au groupe de l'utilisateur.

Avertissement
  • Vous ne pouvez utiliser l'autorisation PassRole que pour transmettre un rôle IAM à un service qui partage le même compte AWS. Pour transmettre un rôle du compte A à un service du compte B, vous devez d'abord créer un rôle IAM dans le compte B qui peut assumer le rôle du compte A, puis le rôle du compte B peut être transmis au service. Pour plus de détails, consultez Accès intercompte aux ressources dans IAM.

  • N'essayez pas de contrôler les personnes susceptibles de faire passer un rôle en étiquetant ce rôle, puis en utilisant la clé de condition ResourceTag dans une politique avec l'action iam:PassRole. Cette approche ne produit pas des résultats fiables.

Lors de la définition de l’autorisation PassRole, vous devez vous assurer qu’un utilisateur ne transfère pas un rôle ayant plus d’autorisations que ce que vous souhaitez pour l’utilisateur. Par exemple, Alice n’est peut-être pas autorisée à effectuer des actions Amazon S3. Si Alice pouvait transmettre un rôle à un service autorisant les actions Amazon S3, le service pourrait effectuer des actions Amazon S3 pour le compte d’Alice lors de l’exécution de la tâche.

Lorsque vous spécifiez un rôle lié à un service, vous devez également posséder l'autorisation de transmettre ce rôle au service. Certains services créent automatiquement un rôle lié à un service dans votre compte lorsque vous effectuez une action dans ce service. Par exemple, Amazon EC2 Auto Scaling crée automatiquement le rôle lié au service AWSServiceRoleForAutoScaling la première fois que vous créez un groupe Auto Scaling. Si vous essayez de spécifier le rôle lié au service lorsque vous créez un groupe Auto Scaling sans l'autorisation iam:PassRole, vous recevez une erreur. Si vous ne spécifiez pas explicitement le rôle, l'autorisation iam:PassRole n'est pas requise et la valeur par défaut est d'utiliser le rôle AWSServiceRoleForAutoScaling pour toutes les opérations effectuées sur ce groupe. Pour savoir quels services prennent en charge les rôles liés à un service, veuillez consulter AWS services qui fonctionnent avec IAM. Pour savoir quels services créent automatiquement un rôle lié à un service lorsque vous effectuez une action dans ce service, choisissez le lien Oui et consultez la documentation relative au rôle lié à un service pour le service.

Un utilisateur peut transmettre un ARN de rôle comme paramètre dans n'importe quelle opération d'API qui utilise le rôle pour attribuer des autorisations au service. Le service vérifie ensuite si cet utilisateur dispose de l'autorisation iam:PassRole. Pour que l'utilisateur transfère uniquement les rôles approuvés, vous pouvez filtrer l'autorisation iam:PassRole à l'aide de l'élément Resources de l'instruction de politique IAM.

Vous pouvez utiliser l'élément Condition dans une politique JSON pour tester la valeur des clés incluses dans le contexte de demande de toutes les demandes AWS. Pour en savoir plus sur l'utilisation des clés de condition dans une politique, consultez la section Éléments de politique JSON IAM : Condition. La clé de condition iam:PassedToService peut être utilisée pour spécifier le principal de service du service auquel un rôle peut être transmis. Pour en savoir plus sur l'utilisation de la clé de condition iam:PassedToService dans une politique, consultez la section iam:PassedToService.

Exemple 1

Supposons que vous vouliez accorder à un utilisateur la possibilité de transférer l'un des ensembles de rôles approuvés au service Amazon EC2 lors du lancement d'une instance. Vous avez besoin de trois éléments :

  • Une politique d'autorisations IAM attachée au rôle qui détermine les opérations pouvant être exécutées par le rôle. Limitez les autorisations aux seules actions nécessaires pour le rôle et aux seules ressources dont le rôle a besoin pour exécuter ces actions. Vous pouvez utiliser une politique d'autorisations IAM gérée par AWS ou créée par le client.

    { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "A list of the permissions the role is allowed to use" ], "Resource": [ "A list of the resources the role is allowed to access" ] } }
  • Une politique d'approbation pour le rôle, qui permet au service d'endosser le rôle. Par exemple, vous pourriez attacher la politique d'approbation suivante au rôle avec l'action UpdateAssumeRolePolicy. Cette politique d'approbation permet à Amazon EC2 d'utiliser le rôle et les autorisations attachées au rôle.

    { "Version": "2012-10-17", "Statement": { "Sid": "TrustPolicyStatementThatAllowsEC2ServiceToAssumeTheAttachedRole", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } }
  • Une politique d'autorisations IAM attachée à l'utilisateur IAM, qui permet à l'utilisateur de transférer uniquement les rôles qui sont approuvés. Vous ajoutez généralement iam:GetRole à iam:PassRole pour que l'utilisateur puisse obtenir les détails du rôle à transférer. Dans cet exemple, l'utilisateur peut transférer uniquement les rôles qui existent dans le compte spécifié avec des noms commençant par l'interface EC2-roles-for-XYZ- :

    { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::account-id:role/EC2-roles-for-XYZ-*" }] }

L'utilisateur peut maintenant démarrer une instance Amazon EC2 avec un rôle affecté. Les applications qui s'exécutent sur l'instance peuvent accéder à des informations d'identification temporaires pour le rôle via les métadonnées du profil d'instance. Les politiques d'autorisations attachées au rôle déterminent ce que peut faire l'instance.

Exemple 2

Amazon Relational Database Service (Amazon RDS) prend en charge une fonction appelée surveillance améliorée. Cette fonctionnalité permet à Amazon RDS de surveiller une instance de base de données grâce à un agent. Elle permet également à Amazon RDS de journaliser des métriques dans Amazon CloudWatch Logs. Pour activer cette fonctionnalité, vous devez créer un rôle de service pour accorder à Amazon RDS des autorisations pour surveiller et écrire des métriques dans vos journaux.

Pour créer un rôle pour la surveillance améliorée Amazon RDS
  1. Connectez-vous à l'outil AWS Management Console, puis ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Cliquez sur Rôles, puis sur Créer un rôle.

  3. Choisissez le type de fonction du Service AWS, puis sous Use cases for other Services AWS (Cas d'utilisation pour d'autres services ), choisissez le service RDS. Choisissez RDS - Enhanced Monitoring (RDS - Surveillance améliorée), puis Next (Suivant).

  4. Choisissez la politique d'autorisations AmazonRDSEnhancedMonitoringRole.

  5. Choisissez Next (Suivant).

  6. Pour Role name (Nom du rôle), saisissez un nom de rôle vous permettant d'identifier le but de ce rôle. Les noms de rôle doivent être uniques dans votre Compte AWS. Lorsqu'un nom de rôle est utilisé dans une politique ou dans le cadre d'un ARN, il est sensible à la casse. 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.

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

  8. (Facultatif) Ajoutez des métadonnées à l'utilisateur en associant les balises sous forme de paires clé-valeur. Pour plus d'informations sur l'utilisation des balises dans IAM, veuillez consulter Balises pour les ressources AWS Identity and Access Management.

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

Le rôle obtient automatiquement une politique d'approbation qui accorde au service monitoring.rds.amazonaws.com les autorisations nécessaires pour endosser le rôle. Une fois cette opération effectuée, Amazon RDS peut exécuter toutes les actions que la politique AmazonRDSEnhancedMonitoringRole autorise.

L'utilisateur pour lequel vous souhaitez activer la surveillance améliorée a besoin d'une politique incluant une instruction lui permettant de lister les fonctions RDS et une autre lui prermettant de transférer la fonction comme suit. Utilisez votre numéro de compte et remplacez le nom du rôle par le nom fourni à l'étape 6.

{ "Sid": "PolicyStatementToAllowUserToListRoles", "Effect": "Allow", "Action": ["iam:ListRoles"], "Resource": "*" }, { "Sid": "PolicyStatementToAllowUserToPassOneSpecificRole", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::account-id:role/RDS-Monitoring-Role" }

Vous pouvez combiner cette instruction avec des instructions d'une autre politique ou la placer dans sa propre politique. Au lieu de spécifier que l'utilisateur peut transférer un rôle commençant par RDS-, vous pouvez remplacer le nom du rôle dans l'ARN d'une ressource par un caractère générique, comme suit.

"Resource": "arn:aws:iam::account-id:role/RDS-*"

Actions iam:PassRole dans les journaux AWS CloudTrail

PassRole n'est pas un appel d'API. PassRole est une autorisation, ce qui signifie qu'aucun journal CloudTrail n'est généré lorsque vous utilisez IAM PassRole. Pour vérifier quels rôles sont transmis à quels Services AWS dans CloudTrail, vous devez consulter le journal CloudTrail qui a créé ou modifié la ressource AWS recevant le rôle. Par exemple, si un rôle est transmis à une fonction AWS Lambda lors de sa création, le journal répertoriant l'action CreateFunction affichera l'enregistrement du rôle qui a été transmis à la fonction.

ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.