Utilisation de rôles liés à un service pour Serverless EMR - Amazon EMR

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.

Utilisation de rôles liés à un service pour Serverless EMR

Amazon EMR Serverless utilise AWS Identity and Access Management (IAM) rôles liés aux services. Un rôle lié à un service est un type unique de IAM rôle directement lié à Serverless. EMR Les rôles liés au service sont prédéfinis par EMR Serverless et incluent toutes les autorisations dont le service a besoin pour appeler d'autres AWS services en votre nom.

Un rôle lié à un service facilite la configuration de EMR Serverless, car vous n'avez pas à ajouter manuellement les autorisations nécessaires. EMRServerless définit les autorisations associées à ses rôles liés aux services et, sauf indication contraire, seul EMR Serverless peut assumer ses rôles. Les autorisations définies incluent la politique de confiance et la politique d'autorisations, et cette politique d'autorisations ne peut être attachée à aucune autre IAM entité.

Vous pouvez supprimer un rôle lié à un service uniquement après la suppression préalable de ses ressources connexes. Cela protège vos ressources EMR sans serveur, car vous ne pouvez pas supprimer par inadvertance l'autorisation d'accès aux ressources.

Pour plus d'informations sur les autres services qui prennent en charge les rôles liés à un service, voir AWS Services qui fonctionnent avec IAM et recherchez les services dont la valeur Oui est indiquée dans la colonne Rôles liés aux services. Choisissez un Oui ayant un lien permettant de consulter les détails du rôle pour ce service.

Autorisations de rôle liées au service pour Serverless EMR

EMRServerless utilise le rôle lié au service nommé AWSServiceRoleForAmazonEMRServerlesspour lui permettre d'appeler AWS APIsen votre nom.

Le rôle AWSServiceRoleForAmazonEMRServerless lié à un service fait confiance aux services suivants pour assumer le rôle :

  • ops.emr-serverless.amazonaws.com

La politique d'autorisation de rôle nommée AmazonEMRServerlessServiceRolePolicy permet à EMR Serverless d'effectuer les actions suivantes sur les ressources spécifiées.

Note

Le contenu de la politique gérée étant modifié, la politique présentée ici est peut-être obsolète. Afficher la plus grande partie up-to-date de la politique A mazonEMRServerless ServiceRolePolicy dans le AWS Management Console.

  • Action : ec2:CreateNetworkInterface

  • Action : ec2:DeleteNetworkInterface

  • Action : ec2:DescribeNetworkInterfaces

  • Action : ec2:DescribeSecurityGroups

  • Action : ec2:DescribeSubnets

  • Action : ec2:DescribeVpcs

  • Action : ec2:DescribeDhcpOptions

  • Action : ec2:DescribeRouteTables

  • Action : cloudwatch:PutMetricData

Voici la AmazonEMRServerlessServiceRolePolicy politique complète.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EC2PolicyStatement", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Sid": "CloudWatchPolicyStatement", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "cloudwatch:namespace": [ "AWS/EMRServerless", "AWS/Usage" ] } } } ] }

La politique de confiance suivante est attachée à ce rôle pour permettre au principal EMR Serverless d'assumer ce rôle.

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

Vous devez configurer les autorisations pour autoriser une IAM entité (telle qu'un utilisateur, un groupe ou un rôle) à créer, modifier ou supprimer un rôle lié à un service. Pour plus d'informations, consultez la section Autorisations relatives aux rôles liés à un service dans le Guide de l'IAMutilisateur.

Création d'un rôle lié à un service pour Serverless EMR

Vous n’avez pas besoin de créer manuellement un rôle lié à un service. Lorsque vous créez une nouvelle application EMR sans serveur dans le AWS Management Console (à l'aide de EMR Studio), le AWS CLI, ou le AWS API, EMR Serverless crée pour vous le rôle lié au service. Vous devez configurer les autorisations pour autoriser une IAM entité (telle qu'un utilisateur, un groupe ou un rôle) à créer, modifier ou supprimer un rôle lié à un service.

Pour créer le rôle AWSServiceRoleForAmazonEMRServerless lié à un service à l'aide de IAM

Ajoutez l'instruction suivante à la politique d'autorisation pour l'IAMentité qui doit créer le rôle lié à un service.

{ "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Si vous supprimez ce rôle lié à un service et que vous avez ensuite besoin de le recréer, vous pouvez utiliser la même procédure pour recréer le rôle dans votre compte. Lorsque vous créez une nouvelle application EMR Serverless, EMR Serverless crée à nouveau le rôle lié au service pour vous.

Vous pouvez également utiliser la IAM console pour créer un rôle lié à un service avec le cas d'utilisation EMRsans serveur. Dans le volet AWS CLI ou le AWS API, créez un rôle lié à un service avec le nom du ops.emr-serverless.amazonaws.com service. Pour plus d'informations, consultez la section Création d'un rôle lié à un service dans le Guide de l'IAMutilisateur. Si vous supprimez ce rôle lié à un service, vous pouvez utiliser ce même processus pour créer le rôle à nouveau.

Modification d'un rôle lié à un service pour Serverless EMR

EMRServerless ne vous permet pas de modifier le rôle AWSServiceRoleForAmazonEMRServerless lié au service car diverses entités peuvent y faire référence. Vous ne pouvez pas modifier le AWS IAM-politique propre que le rôle lié au service EMR Serverless utilise, car elle contient toutes les autorisations nécessaires dont Serverless a besoin. EMR Vous pouvez toutefois modifier la description du rôle à l'aide deIAM.

Pour modifier la description du rôle AWSServiceRoleForAmazonEMRServerless lié à un service à l'aide de IAM

Ajoutez la déclaration suivante à la politique d'autorisation pour l'IAMentité qui doit modifier la description d'un rôle lié à un service.

{ "Effect": "Allow", "Action": [ "iam: UpdateRoleDescription" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Pour plus d'informations, consultez la section Modification d'un rôle lié à un service dans le Guide de l'IAMutilisateur.

Supprimer un rôle lié à un service pour Serverless EMR

Si vous n’avez plus besoin d’utiliser une fonctionnalité ou un service qui nécessite un rôle lié à un service, nous vous recommandons de supprimer ce rôle. Cela vous évite d'avoir une entité inutilisée qui n'est pas activement surveillée ou maintenue. Toutefois, vous devez supprimer toutes les applications EMR sans serveur dans toutes les régions avant de pouvoir supprimer le rôle lié à un service.

Note

Si le service EMR Serverless utilise le rôle lorsque vous essayez de supprimer les ressources associées au rôle, la suppression risque d'échouer. Si cela se produit, patientez quelques minutes et réessayez.

Pour supprimer le rôle AWSServiceRoleForAmazonEMRServerless lié à un service à l'aide de IAM

Ajoutez l'instruction suivante à la politique d'autorisation pour l'IAMentité qui doit supprimer un rôle lié à un service.

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Pour supprimer manuellement le rôle lié à un service à l'aide de IAM

Utilisez la IAM console, le AWS CLI, ou le AWS APIpour supprimer le rôle AWSServiceRoleForAmazonEMRServerless lié au service. Pour plus d'informations, voir Supprimer un rôle lié à un service dans le Guide de l'IAMutilisateur.

Régions prises en charge pour les rôles EMR liés à un service sans serveur

EMRServerless prend en charge l'utilisation de rôles liés au service dans toutes les régions où le service est disponible. Pour plus d’informations, consultez .AWS Régions et points de terminaison.