Configurazione Run Command - AWS Systems Manager

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurazione Run Command

Prima di poter gestire i nodi utilizzando Run Command, uno strumento in AWS Systems Manager, configura una policy AWS Identity and Access Management (IAM) per qualsiasi utente che eseguirà i comandi. Quando utilizzi delle chiavi di condizione globali per l'azione SendCommand nelle policy IAM, è necessario includere la chiave di condizione aws:ViaAWSService e impostare il valore booleano su true. Di seguito è riportato un esempio.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": ["ssm:SendCommand"], "Resource": ["arn:aws:ssm:region:account:document/YourDocument"], "Condition": { "StringEquals": { "aws:SourceVpce": ["vpce-example1234"] } } }, { "Effect": "Allow", "Action": ["ssm:Sendcommand"], "Resource": ["arn:aws:ssm:region:account:document/YourDocument"], "Condition": { "Bool": {"aws:ViaAWSService": "true"} } } ] }

È necessario anche configurare i nodi per Systems Manager. Per ulteriori informazioni, consulta Configurazione di nodi gestiti per AWS Systems Manager.

Ti consigliamo di completare le seguenti attività di configurazione opzionali per ridurre al minimo il livello di sicurezza e la day-to-day gestione dei nodi gestiti.

Monitora l'esecuzione dei comandi con Amazon EventBridge

Puoi utilizzarlo EventBridge per registrare le modifiche allo stato di esecuzione dei comandi. È possibile scegliere di creare una regola che venga eseguita ogni volta che si verifica una transizione di stato o quando si verifica una transizione verso uno o più stati di interesse. È inoltre possibile specificare Run Command come azione mirata quando si verifica un EventBridge evento. Per ulteriori informazioni, consulta Configurazione EventBridge per gli eventi di Systems Manager.

Monitora l'esecuzione dei comandi utilizzando Amazon Logs CloudWatch

Puoi configurare Run Command per inviare periodicamente tutti gli output dei comandi e i log degli errori a un gruppo di CloudWatch log di Amazon. È possibile monitorare i log di output in tempo quasi reale, cercare locuzioni, valori o modelli specifici e creare allarmi in base alla ricerca. Per ulteriori informazioni, consulta Configurazione di Amazon CloudWatch Logs per Run Command.

Restrict Run Command accesso a nodi gestiti specifici

Puoi limitare la capacità di un utente di eseguire comandi sui nodi gestiti utilizzando AWS Identity and Access Management (IAM). In particolare, è possibile creare una policy IAM con una condizione in base alla quale l'utente può eseguire i comandi solo sui nodi gestiti contrassegnati con tag specifici. Per ulteriori informazioni, consulta Limitazione Run Command accesso basato su tag.

Limitazione Run Command accesso basato su tag

Questa sezione descrive come limitare la capacità di un utente di eseguire comandi sui nodi gestiti specificando una condizione di tag in una policy IAM. I nodi gestiti includono EC2 istanze Amazon e non EC2 nodi in un ambiente ibrido e multicloud configurato per Systems Manager. Sebbene le informazioni non siano presentate in modo esplicito, puoi anche limitare l'accesso ai dispositivi principali gestiti. AWS IoT Greengrass Per iniziare, devi tagging dei dispositivi AWS IoT Greengrass . Per ulteriori informazioni, consulta Applicazione di tag alle risorse di AWS IoT Greengrass Version 2 nella Guida per gli sviluppatori di AWS IoT Greengrass Version 2 .

È possibile limitare l'esecuzione dei comandi a nodi gestiti specifici creando una policy IAM che include una condizione in base alla quale l'utente può eseguire i comandi solo sui nodi a cui sono applicati tag specifici. Nell'esempio seguente, l'utente è autorizzato a utilizzare Run Command (Effect: Allow, Action: ssm:SendCommand) utilizzando qualsiasi documento SSM (Resource: arn:aws:ssm:*:*:document/*) su qualsiasi node (Resource: arn:aws:ec2:*:*:instance/*) a condizione che il nodo sia un Finance WebServer (ssm:resourceTag/Finance: WebServer). Se l'utente invia un comando a un nodo privo di tag o con un tag diverso da Finance: WebServer, i risultati dell'esecuzione mostrano AccessDenied.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":[ "arn:aws:ssm:*:*:document/*" ] }, { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":[ "arn:aws:ec2:*:*:instance/*" ], "Condition":{ "StringLike":{ "ssm:resourceTag/Finance":[ "WebServers" ] } } } ] }

È possibile creare policy IAM che permettono a un utente di eseguire comandi su nodi gestiti contrassegnati con più tag. La policy seguente consente all'utente di eseguire comandi su nodi gestiti che dispongono di due tag. Se l'utente invia un comando a un nodo non contrassegnato con questi due tag, i risultati dell'esecuzione mostrano AccessDenied.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":"*", "Condition":{ "StringLike":{ "ssm:resourceTag/tag_key1":[ "tag_value1" ], "ssm:resourceTag/tag_key2":[ "tag_value2" ] } } }, { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":[ "arn:aws:ssm:us-west-1::document/AWS-*", "arn:aws:ssm:us-east-2::document/AWS-*" ] }, { "Effect":"Allow", "Action":[ "ssm:UpdateInstanceInformation", "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetDocument" ], "Resource":"*" } ] }

È anche possibile creare policy IAM che consentono a un utente di eseguire comandi su più gruppi di nodi gestiti con tag. La policy di esempio seguente consente all'utente di eseguire comandi su uno o su entrambi i gruppi di nodi con tag.

{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":"*", "Condition":{ "StringLike":{ "ssm:resourceTag/tag_key1":[ "tag_value1" ] } } }, { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":"*", "Condition":{ "StringLike":{ "ssm:resourceTag/tag_key2":[ "tag_value2" ] } } }, { "Effect":"Allow", "Action":[ "ssm:SendCommand" ], "Resource":[ "arn:aws:ssm:us-west-1::document/AWS-*", "arn:aws:ssm:us-east-2::document/AWS-*" ] }, { "Effect":"Allow", "Action":[ "ssm:UpdateInstanceInformation", "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetDocument" ], "Resource":"*" } ] }

Per ulteriori informazioni sulla creazione di policy IAM, consulta la pagina Policy gestite e policy inline nella Guida per l'utente di IAM. Per ulteriori informazioni sull'aggiunta di tag ai nodi gestiti, consulta Editor di tag nella AWS Resource Groups Guida per l'utente di.