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.
Vous pouvez utiliser Workflow Studio pour configurer des rôles d'exécution pour vos flux de travail. Chaque Step Functions la machine à états nécessite un AWS Identity and Access Management (IAM) qui accorde à la machine d'état l'autorisation d'effectuer des actions sur Services AWS les ressources ou d'appeler HTTPS APIs. Ce rôle est appelé rôle d'exécution.
Le rôle d'exécution doit contenir IAM des politiques pour chaque action, par exemple, des politiques qui permettent à la machine d'état d'invoquer un AWS Lambda fonction, exécutez un AWS Batch job, ou appelez l'API Stripe. Step Functions vous oblige à fournir un rôle d'exécution dans les cas suivants :
-
Vous créez une machine à états dans la console AWS SDKs ou à AWS CLI l'aide de l'CreateStateMachineAPI.
-
Vous testez un état dans la console AWS SDKs, ou AWS CLI à l'aide de TestStatel'API.
Rubriques
À propos des rôles générés automatiquement
Lorsque vous créez une machine à états dans Step Functions console, Workflow Studio peut créer automatiquement pour vous un rôle d'exécution contenant les éléments nécessaires IAM politiques. Workflow Studio analyse la définition de votre machine à états et génère des politiques avec le moins de privilèges nécessaires pour exécuter votre flux de travail.
Workflow Studio peut générer IAM politiques pour les éléments suivants :
-
Tâches HTTP qui appellent HTTPS APIs.
-
États de tâches qui en appellent d'autres Services AWS à l'aide d'intégrations optimisées, tels que Lambda Invoquez, DynamoDB GetItem, ou AWS Glue StartJobRun.
-
États de tâches qui exécutent des flux de travail imbriqués.
-
États cartographiques distribués, y compris les politiques permettant de démarrer les exécutions de flux de travail pour enfants, liste Amazon S3 des buckets, et lisez ou écrivez des objets S3.
-
X-Raytraçage. Chaque rôle généré automatiquement dans Workflow Studio contient une politique qui autorise la machine à états à envoyer des traces à X-Ray.
-
Utiliser CloudWatch les journaux pour enregistrer l'historique des exécutions dans Step Functionslorsque la journalisation est activée sur la machine d'état.
Workflow Studio ne peut pas générer IAM politiques pour les états de tâches qui en appellent d'autres Services AWS à l'aide d'intégrations du AWS SDK.
Génération automatique de rôles
-
Ouvrez la console Step Functions
et choisissez Create state machine. Vous pouvez également mettre à jour une machine à états existante. Reportez-vous à l'étape 4 si vous mettez à jour une machine à états.
-
Dans la boîte de dialogue Choisir un modèle, sélectionnez Vide.
-
Choisissez Sélectionner pour ouvrir Workflow Studio dansMode de conception.
-
Choisissez l'onglet Config.
-
Faites défiler la page jusqu'à la section Autorisations, puis procédez comme suit :
-
Pour le rôle d'exécution, assurez-vous de conserver la sélection par défaut de Créer un nouveau rôle.
Workflow Studio génère automatiquement tous les éléments requis IAM politiques pour chaque état valide dans la définition de votre machine à états. Il affiche une bannière avec le message « Un rôle d'exécution sera créé avec toutes les autorisations ».
Astuce
Pour vérifier les autorisations générées automatiquement par Workflow Studio pour votre machine d'état, choisissez Vérifier les autorisations générées automatiquement.
Note
Si vous supprimez le rôle IAM créé par Step Functions, Step Functions ne pourra pas le recréer ultérieurement. De même, si vous modifiez le rôle (par exemple, en supprimant Step Functions des principes de la politique IAM), Step Functions ne pourra pas restaurer ses paramètres d'origine ultérieurement.
Si Workflow Studio ne parvient pas à générer tous les éléments requis IAM politiques, il affiche une bannière avec le message Les autorisations pour certaines actions ne peuvent pas être générées automatiquement. Un IAM le rôle sera créé avec des autorisations partielles uniquement. Pour plus d'informations sur la façon d'ajouter les autorisations manquantes, consultezRésoudre les problèmes de génération de rôles.
-
Choisissez Create si vous créez une machine à états. Sinon, choisissez Save (Enregistrer).
-
Choisissez Confirmer dans la boîte de dialogue qui apparaît.
Workflow Studio enregistre votre machine d'état et crée le nouveau rôle d'exécution.
-
Résoudre les problèmes de génération de rôles
Workflow Studio ne peut pas générer automatiquement un rôle d'exécution avec toutes les autorisations requises dans les cas suivants :
-
Il y a des erreurs dans votre machine d'état. Assurez-vous de résoudre toutes les erreurs de validation dans Workflow Studio. Assurez-vous également de corriger toutes les erreurs côté serveur que vous rencontrez au cours de l'enregistrement.
-
Votre machine à états contient des tâches utilisant des intégrations de AWS SDK. Workflow Studio ne peut pas être généré automatiquement IAM politiques dans ce cas. Workflow Studio affiche une bannière avec le message « Les autorisations pour certaines actions ne peuvent pas être générées automatiquement ». Un IAM le rôle sera créé avec des autorisations partielles uniquement. Dans le tableau des autorisations générées automatiquement par Review, choisissez le contenu dans Status pour plus d'informations sur les politiques manquantes à votre rôle d'exécution. Workflow Studio peut toujours générer un rôle d'exécution, mais ce rôle ne contiendra pas IAM politiques pour toutes les actions. Consultez les liens sous Liens de documentation pour rédiger vos propres politiques et les ajouter au rôle une fois celui-ci généré. Ces liens sont disponibles même après avoir enregistré la machine d'état.
Rôle pour tester les tâches HTTP dans Workflow Studio
Le test de l'état d'une tâche HTTP nécessite un rôle d'exécution. Si vous ne disposez pas d'un rôle doté d'autorisations suffisantes, utilisez l'une des options suivantes pour créer un rôle :
-
Générer automatiquement un rôle avec Workflow Studio (recommandé) : il s'agit de l'option sécurisée. Fermez la boîte de dialogue État du test et suivez les instructions indiquées dansGénération automatique de rôles. Cela vous obligera à créer ou à mettre à jour votre machine d'état d'abord, puis à retourner dans Workflow Studio pour tester votre état.
-
Utiliser un rôle doté d'un accès administrateur : si vous êtes autorisé à créer un rôle avec un accès complet à tous les services et ressources AWS, vous pouvez utiliser ce rôle pour tester tout type d'état dans votre flux de travail. Pour ce faire, vous pouvez créer un Step Functions rôle de service et ajoutez-y la AdministratorAccess politique dans IAM console https://console.aws.amazon.com/iam/
.
Rôle pour tester une intégration de service optimisée dans Workflow Studio
La tâche indique que les intégrations de services optimisées pour les appels nécessitent un rôle d'exécution. Si vous ne disposez pas d'un rôle doté d'autorisations suffisantes, utilisez l'une des options suivantes pour créer un rôle :
-
Générer automatiquement un rôle avec Workflow Studio (recommandé) : il s'agit de l'option sécurisée. Fermez la boîte de dialogue État du test et suivez les instructions indiquées dansGénération automatique de rôles. Cela vous obligera à créer ou à mettre à jour votre machine d'état d'abord, puis à retourner dans Workflow Studio pour tester votre état.
-
Utiliser un rôle doté d'un accès administrateur : si vous êtes autorisé à créer un rôle avec un accès complet à tous les services et ressources AWS, vous pouvez utiliser ce rôle pour tester tout type d'état dans votre flux de travail. Pour ce faire, vous pouvez créer un Step Functions rôle de service et ajoutez-y la AdministratorAccess politique dans IAM console https://console.aws.amazon.com/iam/
.
Rôle pour tester l'intégration d'un service AWS SDK dans Workflow Studio
La tâche indique que les intégrations du AWS SDK d'appel nécessitent un rôle d'exécution. Si vous ne disposez pas d'un rôle doté d'autorisations suffisantes, utilisez l'une des options suivantes pour créer un rôle :
-
Générer automatiquement un rôle avec Workflow Studio (recommandé) : il s'agit de l'option sécurisée. Fermez la boîte de dialogue État du test et suivez les instructions indiquées dansGénération automatique de rôles. Cela vous obligera à créer ou à mettre à jour votre machine d'état d'abord, puis à retourner dans Workflow Studio pour tester votre état. Procédez comme suit :
-
Fermez la boîte de dialogue État du test
-
Choisissez l'onglet Config pour afficher le mode Config.
-
Faites défiler la page vers le bas jusqu'à la section Autorisations.
-
Workflow Studio affiche une bannière avec le message « Les autorisations pour certaines actions ne peuvent pas être générées automatiquement ». Un IAM le rôle sera créé avec des autorisations partielles uniquement. Choisissez Vérifier les autorisations générées automatiquement.
-
Le tableau des autorisations généré automatiquement par Review affiche une ligne qui indique l'action correspondant à l'état de la tâche que vous souhaitez tester. Consultez les liens sous Liens de documentation pour écrire le vôtre IAM politiques dans un rôle personnalisé.
-
-
Utiliser un rôle doté d'un accès administrateur : si vous êtes autorisé à créer un rôle avec un accès complet à tous les services et ressources AWS, vous pouvez utiliser ce rôle pour tester tout type d'état dans votre flux de travail. Pour ce faire, vous pouvez créer un Step Functions rôle de service et ajoutez-y la AdministratorAccess politique dans IAM console https://console.aws.amazon.com/iam/
.
Rôle pour tester les états des flux dans Workflow Studio
Vous avez besoin d'un rôle d'exécution pour tester les états de flux dans Workflow Studio. Les états de flux sont les états qui dirigent le flux d'exécution État du flux de travail de choixÉtat du flux de travail parallèle, tels queÉtat du flux de travail cartographique,Passer l'état du flux de travail,État du flux de travail en attente,État du flux de travail réussi, ouÉtat du flux de travail défaillant. L'TestStateAPI ne fonctionne pas avec les états Map ou Parallel. Utilisez l'une des options suivantes pour créer un rôle afin de tester l'état d'un flux :
-
Utilisez n'importe quel rôle dans votre Compte AWS (recommandé) — Les états du flux ne nécessitent aucun rôle spécifique IAM politiques, car elles ne font appel ni à AWS des actions ni à des ressources. Par conséquent, vous pouvez utiliser n'importe quel IAM rôle dans votre Compte AWS.
-
Dans la boîte de dialogue État du test, sélectionnez un rôle dans la liste déroulante Rôle d'exécution.
-
Si aucun rôle n'apparaît dans la liste déroulante, procédez comme suit :
-
Dans le volet IAM console https://console.aws.amazon.com/iam/
, choisissez Rôles. -
Choisissez un rôle dans la liste et copiez son ARN depuis la page de détails du rôle. Vous devrez fournir cet ARN dans la boîte de dialogue Test state.
-
Dans la boîte de dialogue État du test, sélectionnez Entrer un ARN de rôle dans la liste déroulante Rôle d'exécution.
-
Collez l'ARN dans Role ARN.
-
-
-
Utiliser un rôle doté d'un accès administrateur : si vous êtes autorisé à créer un rôle avec un accès complet à tous les services et ressources AWS, vous pouvez utiliser ce rôle pour tester tout type d'état dans votre flux de travail. Pour ce faire, vous pouvez créer un Step Functions rôle de service et ajoutez-y la AdministratorAccess politique dans IAM console https://console.aws.amazon.com/iam/
.