Utilisation de scripts dans des runbooks - AWS Systems Manager

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 scripts dans des runbooks

Les runbooks Automation prennent en charge l'exécution de scripts dans le cadre de l'automatisation. Automation est une fonctionnalité de AWS Systems Manager. En utilisant les runbooks, vous pouvez exécuter des scripts directement dans AWS sans créer un environnement de calcul distinct pour exécuter vos scripts. Comme les runbooks peuvent exécuter des étapes de script avec d'autres types d'étapes d'automatisation telles que les approbations, vous pouvez intervenir manuellement en cas de situations critiques ou ambiguës. Vous pouvez envoyer la sortie depuis des actions aws:executeScript de vos runbooks vers Amazon CloudWatch Logs. Pour de plus amples informations, veuillez consulter Journalisation de la sortie d'actions Automation avec CloudWatch Logs.

Autorisations pour l'utilisation de runbooks

Pour utiliser un runbook, Systems Manager doit utiliser les autorisations d'un rôle AWS Identity and Access Management (IAM). La méthode utilisée par Automation pour déterminer les autorisations du rôle à utiliser dépend de divers facteurs et de si une étape utilise l'action aws:executeScript.

Pour les runbooks qui n'utilisent pas aws:executeScript, Automation utilise l'une des deux sources d'autorisations suivantes :

  • Les autorisations d'un rôle de service IAM, ou rôle de responsable, qui est spécifié dans le runbook ou transmis en tant que paramètre.

  • Si aucun rôle de service IAM n'est spécifié, il utilise les autorisations de l'utilisateur qui a lancé l'automatisation.

Toutefois, lorsqu'une étape d'un runbook comprend l'action aws:executeScript, un rôle de service IAM (rôle de responsable) est toujours requis si le script Python ou PowerShell spécifié pour l'action appelle des opérations d'API AWS. Automation vérifie ce rôle dans l'ordre suivant :

  • Les autorisations d'un rôle de service IAM, ou rôle de responsable, qui est spécifié dans le runbook ou transmis en tant que paramètre.

  • Si aucun rôle n'est trouvé, Automation tente d'exécuter le script Python ou PowerShell spécifié pour aws:executeScript sans aucune autorisation. Si le script appelle une opération d'API AWS (par exemple, l'opération Amazon EC2 CreateImage) ou tente d'agir sur une ressource AWS (telle qu'une instance EC2), l'étape contenant le script échoue et Systems Manager renvoie un message d'erreur signalant l'échec.

Ajout de scripts à des runbooks

Vous pouvez ajouter des scripts à vos runbooks en incluant le script en ligne comme partie d'une étape du runbook. Vous pouvez également joindre des scripts au runbook en les téléchargeant de votre ordinateur local ou en spécifiant un compartiment Amazon Simple Storage Service (Amazon S3) où se trouvent les scripts. Lorsqu'une étape exécutant un script est terminée, la sortie du script est disponible en tant qu'objet JSON, que vous pouvez ensuite utiliser comme entrée pour les étapes suivantes de votre runbook.

Contraintes de script applicables à des runbooks

Les runbooks imposent une limite de cinq fichiers en pièce jointe. Les scripts peuvent être un script Python (.py), un script PowerShell Core (.ps1), ou ils peuvent être joints sous forme de contenu dans un fichier .zip.