Uso de scripts en manuales de procedimientos - AWS Systems Manager

Uso de scripts en manuales de procedimientos

Los manuales de procedimientos de Automation admiten la ejecución de scripts como parte de la automatización. Automation es una capacidad de AWS Systems Manager. Mediante los manuales de procedimientos, puede ejecutar scripts directamente en AWS sin crear un entorno informático independiente para ejecutar los scripts. Dado que los manuales de procedimientos pueden ejecutar pasos de script junto con otros tipos de pasos de automatización, como las aprobaciones, usted puede intervenir manualmente en situaciones críticas o ambiguas. Puede enviar la salida desde las acciones aws:executeScript en sus manuales de procedimientos a Amazon CloudWatch Logs. Para obtener más información, consulte Registro de salida de acción de Automation con CloudWatch Logs.

Permisos para utilizar los manuales de procedimientos

Para utilizar un manual de procedimientos, Systems Manager debe utilizar los permisos de un rol de AWS Identity and Access Management (IAM). El método que Automation utiliza para determinar qué permisos de rol utilizar depende de algunos factores y de si un paso utiliza la acción aws:executeScript.

Para los manuales de procedimientos que no utilizan aws:executeScript, Automation emplea una de dos fuentes de permisos:

  • Los permisos de un rol de servicio de IAM, o rol de asunción, que se especifica en el manual de procedimientos o se transfiere como parámetro.

  • Si no se especifica ningún rol de servicio de IAM, los permisos del usuario que inició la automatización.

Sin embargo, cuando un paso de un manual de procedimientos incluye la acción aws:executeScript, siempre se requiere un rol de servicio (rol de asunción) de IAM si el script de Python o PowerShell especificado para la acción llama cualquier operación de la API de AWS. Automation comprueba este rol en el siguiente orden:

  • Los permisos de un rol de servicio de IAM, o rol de asunción, que se especifica en el manual de procedimientos o se transfiere como parámetro.

  • Si no se encuentra ningún rol, Automation intenta ejecutar el script de Python o PowerShell especificado para aws:executeScript sin ningún permiso. Si el script llama una operación de la API de AWS (por ejemplo, la operación CreateImage de Amazon EC2) o intenta actuar sobre un recurso de AWS (como una instancia de EC2), el paso que contiene el script produce un error y Systems Manager devuelve un mensaje al respecto.

Incorporación de scripts a los manuales de procedimientos

Puede agregar scripts a los manuales de procedimientos si los inserta en un paso del manual de procedimientos. También puede adjuntar scripts al manual de procedimientos al cargarlos desde el equipo local o mediante la especificación del bucket de Amazon Simple Storage Service (Amazon S3) donde se encuentren los scripts. Una vez que se complete un paso que ejecuta un script, la salida del script estará disponible como un objeto JSON, el cual luego puede utilizar como entrada para los pasos posteriores del manual de procedimientos.

Restricciones de script para los manuales de procedimientos

Los manuales de procedimientos imponen un límite de cinco archivos adjuntos. Los scripts pueden adoptar la forma de scripts de Python (.py) o scripts de PowerShell Core (.ps1), o adjuntarse como contenido dentro de un archivo .zip.