aws:approve - Suspendre une automatisation pour approbation manuelle - 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.

aws:approve - Suspendre une automatisation pour approbation manuelle

Interrompt temporairement une automatisation jusqu'à ce que les principaux désignés aient approuvé ou rejeté l'action. Une fois le nombre d'approbations requises atteint, l'automatisation reprend. Vous pouvez insérer l'étape d'approbation n'importe où dans la section mainSteps de votre runbook.

Note

Cette action ne prend pas en charge les automatisations multicomptes et régionales. Le délai d'attente par défaut pour cette action est de 7 jours (604 800 secondes) et la valeur maximale est de 30 jours (2 592 000 secondes). Vous pouvez limiter ou étendre le délai d'attente en spécifiant le paramètre timeoutSeconds pour une étape aws:approve.

Dans l'exemple suivant, l'action aws:approve interrompt temporairement l'automatisation jusqu'à ce qu'un approbateur accepte ou rejette l'automatisation. Après approbation, l'automatisation exécute une PowerShell commande simple.

YAML
--- description: RunInstancesDemo1 schemaVersion: '0.3' assumeRole: "{{ assumeRole }}" parameters: assumeRole: type: String message: type: String mainSteps: - name: approve action: aws:approve timeoutSeconds: 1000 onFailure: Abort inputs: NotificationArn: arn:aws:sns:us-east-2:12345678901:AutomationApproval Message: "{{ message }}" MinRequiredApprovals: 1 Approvers: - arn:aws:iam::12345678901:user/AWS-User-1 - name: run action: aws:runCommand inputs: InstanceIds: - i-1a2b3c4d5e6f7g DocumentName: AWS-RunPowerShellScript Parameters: commands: - date
JSON
{ "description":"RunInstancesDemo1", "schemaVersion":"0.3", "assumeRole":"{{ assumeRole }}", "parameters":{ "assumeRole":{ "type":"String" }, "message":{ "type":"String" } }, "mainSteps":[ { "name":"approve", "action":"aws:approve", "timeoutSeconds":1000, "onFailure":"Abort", "inputs":{ "NotificationArn":"arn:aws:sns:us-east-2:12345678901:AutomationApproval", "Message":"{{ message }}", "MinRequiredApprovals":1, "Approvers":[ "arn:aws:iam::12345678901:user/AWS-User-1" ] } }, { "name":"run", "action":"aws:runCommand", "inputs":{ "InstanceIds":[ "i-1a2b3c4d5e6f7g" ], "DocumentName":"AWS-RunPowerShellScript", "Parameters":{ "commands":[ "date" ] } } } ] }

Vous pouvez approuver ou refuser des automatisations en attente d'approbation dans la console.

Pour approuver ou rejeter des automatisations en attente
  1. Ouvrez la AWS Systems Manager console à l'adresse https://console.aws.amazon.com/systems-manager/.

  2. Dans le panneau de navigation de gauche, sélectionnez Automation (Automatisation).

  3. Sélectionnez l'option en regard d'un flux de travail Automation avec le statut En attente.

    Accès à la page d'approbation ou de refus de l'automatisation
  4. Sélectionnez Approve/Deny (Approuver/Refuser).

  5. Vérifiez les détails de l'automatisation.

  6. Sélectionnez Approuver ou Refuser, saisissez un commentaire facultatif, puis sélectionnez Soumettre.

Exemple d'entrée

YAML
NotificationArn: arn:aws:sns:us-west-1:12345678901:Automation-ApprovalRequest Message: Please approve this step of the Automation. MinRequiredApprovals: 3 Approvers: - IamUser1 - IamUser2 - arn:aws:iam::12345678901:user/IamUser3 - arn:aws:iam::12345678901:role/IamRole
JSON
{ "NotificationArn":"arn:aws:sns:us-west-1:12345678901:Automation-ApprovalRequest", "Message":"Please approve this step of the Automation.", "MinRequiredApprovals":3, "Approvers":[ "IamUser1", "IamUser2", "arn:aws:iam::12345678901:user/IamUser3", "arn:aws:iam::12345678901:role/IamRole" ] }
NotificationArn

Le nom de la ressource Amazon (ARNd'une rubrique Amazon Simple Notification Service (AmazonSNS) pour les approbations d'automatisation. Lorsque vous spécifiez une étape aws:approve dans un runbook, Automation envoie un message à cette rubrique, permettant aux principaux de savoir qu'ils doivent approuver ou rejeter une étape d'automatisation. Le titre du SNS sujet Amazon doit être préfixé par « Automation ».

Type : chaîne

Obligatoire : non

Message

Les informations que vous souhaitez inclure dans le SNS sujet Amazon lors de l'envoi de la demande d'approbation. Le message peut contenir un nombre maximum de 4 096 caractères.

Type : chaîne

Obligatoire : non

MinRequiredApprovals

Le nombre minimum d'approbations requises pour que l'automatisation reprenne. Si vous ne spécifiez aucune valeur, le système en établit une par défaut. La valeur de ce paramètre doit être un nombre positif. La valeur de ce paramètre ne peut pas dépasser le nombre d'approbateurs défini par le paramètre Approvers.

Type : entier

Obligatoire : non

Approbateurs

Liste des principaux AWS authentifiés qui sont en mesure d'approuver ou de rejeter l'action. Le nombre maximum d'approbateurs est de 10. Vous pouvez spécifier des principaux à l'aide des formats suivants :

  • Un nom d'utilisateur

  • Un utilisateur ARN

  • Un IAM rôle ARN

  • Un rôle IAM assumé ARN

Type : StringList

Obligatoire : oui

EnhancedApprovals

Cette entrée est uniquement utilisée pour les Change Manager modèles. Liste des principaux AWS authentifiés qui sont en mesure d'approuver ou de rejeter l'action, le type de IAM principal et le nombre minimum d'approbateurs. Voici un exemple :

schemaVersion: "0.3" emergencyChange: false autoApprovable: false mainSteps: - name: ApproveAction1 action: aws:approve timeoutSeconds: 604800 inputs: Message: Please approve this change request MinRequiredApprovals: 3 EnhancedApprovals: Approvers: - approver: John Stiles type: IamUser minRequiredApprovals: 0 - approver: Ana Carolina Silva type: IamUser minRequiredApprovals: 0 - approver: GroupOfThree type: IamGroup minRequiredApprovals: 0 - approver: RoleOfTen type: IamRole minRequiredApprovals: 0

Type : StringList

Obligatoire : oui

Sortie

ApprovalStatus

L'état d'approbation de l'étape. L'état peut avoir les valeurs suivantes : Approuvé, Rejeté ou En attente. En attente signifie qu'Automation attend la saisie des approbateurs.

Type : String

ApproverDecisions

Une JSON carte qui inclut la décision d'approbation de chaque approbateur.

Type : MapList