Personnaliser IAM les rôles - 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.

Personnaliser IAM les rôles

Vous souhaiterez peut-être personnaliser les rôles et les autorisations du IAM service afin de limiter les privilèges en fonction de vos exigences de sécurité. Pour personnaliser les autorisations, nous vous recommandons de créer de nouveaux rôles et stratégies. Commencez avec les autorisations des stratégies gérées pour les rôles par défaut (par exemple, AmazonElasticMapReduceforEC2Role et AmazonElasticMapReduceRole). Ensuite, copiez et collez le contenu dans les déclarations de la nouvelle stratégie, modifiez les autorisations selon vos besoins et attachez les stratégies d'autorisations modifiées pour les rôles que vous créez. Vous devez disposer des IAM autorisations appropriées pour utiliser les rôles et les politiques. Pour de plus amples informations, veuillez consulter Permettre aux utilisateurs et aux groupes de créer et de modifier des rôles.

Si vous créez un EMR rôle personnalisé pourEC2, suivez le flux de travail de base, qui crée automatiquement un profil d'instance du même nom. Amazon vous EC2 permet de créer des profils d'instance et des rôles portant des noms différents, mais Amazon EMR ne prend pas en charge cette configuration, ce qui entraîne une erreur « profil d'instance non valide » lorsque vous créez le cluster.

Important

Les stratégies en ligne ne sont pas automatiquement mises à jour lorsque les exigences de service évoluent. Si vous créez et attachez des politiques en ligne, vous devez savoir que des mises à jour de service peuvent se produire et provoquer soudainement des erreurs d'autorisation. Pour plus d'informations, consultez les sections Politiques gérées et Politiques intégrées dans le guide de IAM l'utilisateur etSpécifiez IAM des rôles personnalisés lorsque vous créez un cluster.

Pour plus d'informations sur l'utilisation des IAM rôles, consultez les rubriques suivantes du Guide de l'IAMutilisateur :

Spécifiez IAM des rôles personnalisés lorsque vous créez un cluster

Vous spécifiez le rôle de service pour Amazon EMR et le rôle pour le profil d'EC2instance Amazon lorsque vous créez un cluster. L'utilisateur qui crée des clusters a besoin d'autorisations pour récupérer et attribuer des rôles à Amazon EMR et aux EC2 instances. Dans le cas contraire, un compte n'est pas autorisé à appeler EC2 une erreur se produit. Pour de plus amples informations, veuillez consulter Permettre aux utilisateurs et aux groupes de créer et de modifier des rôles.

Utiliser la console pour spécifier des rôles personnalisés

Lorsque vous créez un cluster, vous pouvez spécifier un rôle de service personnalisé pour AmazonEMR, un rôle personnalisé pour le profil d'EC2instance et un rôle Auto Scaling personnalisé à l'aide des options avancées. Lorsque vous utilisez les options rapides, le rôle de service par défaut et le rôle par défaut du profil d'EC2instance sont spécifiés. Pour de plus amples informations, veuillez consulter IAMrôles de service utilisés par Amazon EMR.

Console
Pour spécifier des IAM rôles personnalisés à l'aide de la console

Lorsque vous créez un cluster avec la console, vous devez spécifier un rôle de service personnalisé pour Amazon EMR et un rôle personnalisé pour le profil d'EC2instance. Pour de plus amples informations, veuillez consulter IAMrôles de service utilisés par Amazon EMR.

  1. Connectez-vous à la AWS Management Console EMR console Amazon et ouvrez-la à l'adresse https://console.aws.amazon.com/emr.

  2. Sous EMREC2Activé dans le volet de navigation de gauche, choisissez Clusters, puis Create cluster.

  3. Sous Configuration de sécurité et autorisations, recherchez le IAMrôle pour le profil d'instance et le rôle de service pour EMR les champs Amazon. Pour chaque type de rôle, sélectionnez un rôle dans la liste. Seuls les rôles dans votre compte ayant la stratégie d'approbation appropriée pour ce type de rôle sont répertoriés.

  4. Choisissez toutes les autres options qui s'appliquent à votre cluster.

  5. Pour lancer cluster, choisissez Créer un cluster.

Utilisez le AWS CLI pour spécifier des rôles personnalisés

Vous pouvez spécifier un rôle de service pour Amazon EMR et un rôle de service pour les EC2 instances de cluster de manière explicite à l'aide d'options avec la create-cluster commande du AWS CLI. Utilisez l'option --service-role pour spécifier le rôle de service. Utilisez l'InstanceProfileargument de l'--ec2-attributesoption pour spécifier le rôle du profil d'EC2instance.

Le rôle Auto Scaling est spécifié à l'aide d'une option séparée --auto-scaling-role. Pour de plus amples informations, veuillez consulter Utilisation de la mise à l'échelle automatique avec une politique personnalisée pour les groupes d'instances.

Pour définir des IAM rôles personnalisés à l'aide du AWS CLI
  • La commande suivante spécifie le rôle de service personnalisé, MyCustomServiceRoleForEMR, et un rôle personnalisé pour le profil d'EC2instance, MyCustomServiceRoleForClusterEC2Instances, lors du lancement d'un cluster. Cet exemple utilise le EMR rôle Amazon par défaut.

    Note

    Les caractères de continuation de ligne Linux (\) sont inclus pour des raisons de lisibilité. Ils peuvent être supprimés ou utilisés dans les commandes Linux. Pour Windows, supprimez-les ou remplacez-les par un caret (^).

    aws emr create-cluster --name "Test cluster" --release-label emr-7.2.0 \ --applications Name=Hive Name=Pig --service-role MyCustomServiceRoleForEMR \ --ec2-attributes InstanceProfile=MyCustomServiceRoleForClusterEC2Instances,\ KeyName=myKey --instance-type m5.xlarge --instance-count 3

Vous pouvez utiliser ces options pour spécifier explicitement les rôles par défaut plutôt qu'à l'aide de l'option --use-default-roles. L'--use-default-rolesoption spécifie le rôle de service et le rôle du profil d'EC2instance défini dans le config fichier du AWS CLI.

L'exemple suivant illustre le contenu d'un config fichier pour AWS CLI les rôles personnalisés spécifiés pour AmazonEMR. Avec ce fichier de configuration, lorsque l'--use-default-rolesoption est spécifiée, le cluster est créé à l'aide du MyCustomServiceRoleForEMR and MyCustomServiceRoleForClusterEC2Instances. Par défaut, le config fichier spécifie la valeur par défaut service_role comme AmazonElasticMapReduceRole et la valeur par défaut instance_profile commeEMR_EC2_DefaultRole.

[default] output = json region = us-west-1 aws_access_key_id = myAccessKeyID aws_secret_access_key = mySecretAccessKey emr = service_role = MyCustomServiceRoleForEMR instance_profile = MyCustomServiceRoleForClusterEC2Instances