Rôle EventBridge IAM Amazon ECS - Amazon Elastic Container Service

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.

Rôle EventBridge IAM Amazon ECS

Avant de pouvoir utiliser les tâches planifiées Amazon ECS avec des EventBridge règles et des cibles, le EventBridge service a besoin d'autorisations pour exécuter des tâches Amazon ECS en votre nom. Ces autorisations sont fournies par le rôle IAM EventBridge (ecsEventsRole).

La politique AmazonEC2ContainerServiceEventsRole est présentée ci-dessous.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["ecs:RunTask"], "Resource": ["*"] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["*"], "Condition": { "StringLike": {"iam:PassedToService": "ecs-tasks.amazonaws.com"} } }, { "Effect": "Allow", "Action": "ecs:TagResource", "Resource": "*", "Condition": { "StringEquals": { "ecs:CreateAction": ["RunTask"] } } } ] }

Si vos tâches planifiées nécessitent l'utilisation du rôle d'exécution de tâches, d'un rôle de tâche ou d'un remplacement de rôle de tâche, vous devez ajouter des iam:PassRole autorisations pour chaque rôle d'exécution de tâche, rôle de tâche ou remplacement de rôle de tâche au rôle EventBridge IAM. Pour plus d'informations sur le rôle d'exécution de tâche, consultez Rôle IAM d'exécution de tâche Amazon ECS.

Note

Spécifiez l'ARN complet du rôle d'exécution de tâche ou du remplacement de rôle de tâche.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsTaskExecutionRole_or_TaskRole_name>"] } ] }

Vous pouvez choisir de le laisser AWS Management Console créer le EventBridge rôle pour vous lorsque vous configurez une tâche planifiée. Pour de plus amples informations, veuillez consulter Utilisation d'Amazon EventBridge Scheduler pour planifier des tâches Amazon ECS .

Création du EventBridge rôle

Remplacez tout user input par vos propres informations.

  1. Créez un fichier nommé eventbridge-trust-policy.json contenant la stratégie d'approbation à utiliser pour le rôle IAM. Le fichier doit contenir ce qui suit :

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Utilisez la commande suivante pour créer un rôle IAM nommé ecsEventsRole en utilisant la politique de confiance que vous avez créée à l'étape précédente.

    aws iam create-role \ --role-name ecsEventsRole \ --assume-role-policy-document file://eventbridge-trust-policy.json
  3. Attachez le AWS AmazonEC2ContainerServiceEventsRole managé au ecsEventsRole rôle à l'aide de la commande suivante.

    aws iam attach-role-policy \ --role-name ecsEventsRole \ --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceEventsRole

Vous pouvez également utiliser le flux de travail de politique de confiance personnalisé (https://console.aws.amazon.com/iam/) de la console IAM pour créer le rôle. Pour plus d'informations, consultez la section Création d'un rôle à l'aide de politiques de confiance personnalisées (console) dans le guide de l'utilisateur IAM.

Attachement d'une stratégie au rôle ecsEventsRole

Vous pouvez utiliser les procédures suivantes pour ajouter des autorisations pour le rôle d'exécution de tâches au rôle EventBridge IAM.

AWS Management Console
Pour utiliser l'éditeur de politique JSON afin de créer une politique
  1. Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/l'adresse.

  2. Dans le panneau de navigation de gauche, sélectionnez Policies (Politiques).

    Si vous sélectionnez Politiques pour la première fois, la page Bienvenue dans les politiques gérées s'affiche. Sélectionnez Mise en route.

  3. En haut de la page, sélectionnez Créer une politique.

  4. Dans la section Éditeur de politiques, choisissez l’option JSON.

  5. Entrez le document de politique JSON suivant :

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsTaskExecutionRole_or_TaskRole_name>"] } ] }
  6. Choisissez Suivant.

    Note

    Vous pouvez basculer à tout moment entre les options des éditeurs visuel et JSON. Toutefois, si vous apportez des modifications ou si vous choisissez Suivant dans l’éditeur visuel, IAM peut restructurer votre politique afin de l’optimiser pour l’éditeur visuel. Pour de plus amples informations, consultez la page Restructuration de politique dans le Guide de l’utilisateur IAM.

  7. Sur la page Vérifier et créer, saisissez un Nom de politique et une Description (facultative) pour la politique que vous créez. Vérifiez les Autorisations définies dans cette politique pour voir les autorisations accordées par votre politique.

  8. Choisissez Create policy (Créer une politique) pour enregistrer votre nouvelle politique.

Après avoir créé la stratégie, associez-la au EventBridge rôle. Pour plus d'informations sur la manière d'associer la politique au rôle, voir Mettre à jour les autorisations pour un rôle dans le Guide de AWS Identity and Access Management l'utilisateur.

AWS CLI

Remplacez tout user input par vos propres informations.

  1. Créez un fichier nommé ev-iam-passrole.json avec le contenu suivant.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": ["arn:aws:iam::<aws_account_id>:role/<ecsTaskExecutionRole_or_TaskRole_name>"] } ] }
  2. Utilisez la AWS CLI commande suivante pour créer la stratégie IAM à l'aide du fichier de document de stratégie JSON.

    aws iam create-policy \ --policy-name eventsTaskExecutionPolicy \ --policy-document file://ev-iam-passrole.json
  3. Récupérez l'ARN de la politique IAM que vous avez créée à l'aide de la commande suivante.

    aws iam list-policies --scope Local --query 'Policies[?PolicyName==`eventsTaskExecutionPolicy`].Arn'
  4. Utilisez la commande suivante pour associer la stratégie au rôle EventBridge IAM à l'aide de l'ARN de la stratégie.

    aws iam attach-role-policy \ --role-name ecsEventsRole \ --policy-arn arn:aws:iam:111122223333:aws:policy/eventsTaskExecutionPolicy