Personnalisez les rôles IAM avec Amazon 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.

Personnalisez les rôles IAM avec Amazon EMR

Vous avez la possibilité de personnaliser les fonctions du service IAM et les autorisations pour limiter les privilèges selon vos exigences en matière 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 avoir les autorisations IAM appropriées pour travailler avec les rôles et les stratégies. 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 rôle EMR personnalisé pour EC2, 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 Stratégies gérées et stratégies en ligne dans le Guide de l'utilisateur IAM et Spécifiez les rôles IAM personnalisés lors de la création d'un cluster.

Pour plus d'informations sur la manipulation de rôles IAM, consultez les rubriques suivantes dans le Guide de l'utilisateur IAM :

Spécifiez les rôles IAM personnalisés lors de la création d'un cluster

Vous spécifiez le rôle de service pour Amazon EMR et le rôle pour le profil d' EC2 instance 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 EC2 aux 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 Amazon EMR, un rôle personnalisé pour le profil d' EC2 instance 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' EC2 instance sont spécifiés. Pour de plus amples informations, veuillez consulter Rôles de service IAM utilisés par Amazon EMR.

Console
Pour spécifier des rôles IAM personnalisés avec 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' EC2 instance. Pour de plus amples informations, veuillez consulter Rôles de service IAM utilisés par Amazon EMR.

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

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

  3. Sous Configuration de la sécurité et autorisations, recherchez les champs Rôle IAM pour le profil d'instance et Rôle de service pour Amazon EMR. 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' EC2 instance.

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 du dimensionnement automatique avec une politique personnalisée pour les groupes d'instances dans Amazon EMR.

Pour spécifier des rôles IAM 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' EC2 instanceMyCustomServiceRoleForClusterEC2Instances, lors du lancement d'un cluster. Cet exemple utilise le rôle Amazon EMR 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.6.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' EC2 instance 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 Amazon EMR. Avec ce fichier de configuration, lorsque l'option --use-default-roles est spécifiée, le cluster est créé en utilisant les MyCustomServiceRoleForEMR et MyCustomServiceRoleForClusterEC2Instances. Par défaut, le fichier config spécifie le service_role par défaut en tant que AmazonElasticMapReduceRole et le instance_profile par défaut en tant que EMR_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