Muster-IAM-Richtlinien für Session Manager - AWS Systems Manager

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Muster-IAM-Richtlinien für Session Manager

Verwenden Sie die Beispiele in diesem Abschnitt, um Ihnen bei der Erstellung von AWS Identity and Access Management (IAM-) Richtlinien zu helfen, die die am häufigsten benötigten Zugriffsberechtigungen Session Manager bereitstellen.

Anmerkung

Sie können auch eine AWS KMS key Richtlinie verwenden, um zu kontrollieren, welche IAM-Entitäten (Benutzer oder Rollen) Zugriff auf Ihren KMS-Schlüssel erhalten. AWS-Konten Weitere Informationen finden Sie im AWS Key Management Service Entwicklerhandbuch unter Überblick über die Verwaltung des Zugriffs auf Ihre AWS KMS Ressourcen und die Verwendung wichtiger Richtlinien. AWS KMS

Kurzeinführung in Endbenutzerrichtlinien für Session Manager

Verwenden Sie die folgenden Beispiele, um IAM-Endbenutzerrichtlinien für Session Manager zu erstellen.

Sie können eine Richtlinie erstellen, die es Benutzern ermöglicht, Sitzungen nur von der Session Manager Konsole und AWS Command Line Interface (AWS CLI), nur von der Amazon Elastic Compute Cloud (Amazon EC2) -Konsole oder von allen drei aus zu starten.

Diese Richtlinien bieten Endbenutzern die Möglichkeit, eine Sitzung zu einem bestimmten verwalteten Knoten zu starten und nur ihre eigenen Sitzungen zu beenden. Beispiele für Anpassungen, die Sie möglicherweise für die Richtlinie ausführen sollten, finden Sie unter Zusätzliche IAM-Beispielrichtlinien für Session Manager.

Ersetzen Sie in den folgenden Beispielrichtlinien jede example resource placeholder durch Ihre eigenen Informationen.

Wählen Sie die folgenden Registerkarten, um die Beispielrichtlinie für den Bereich des Sitzungszugriffs anzuzeigen, den Sie bereitstellen möchten.

Session Manager and Fleet Manager

Verwenden Sie diese Beispielrichtlinie für Provider-Benutzer, die Sitzungen nur über die Session Manager- und die Fleet Manager-Konsolen starten und wiederaufnehmen können.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" Footnote callout 2 to explain a line in a JSON policy ], "Resource": "key-name" } ] }
Amazon EC2

Verwenden Sie diese Beispielrichtlinie, um Benutzern die Möglichkeit zu geben, Sitzungen nur von der EC2 Amazon-Konsole aus zu starten und fortzusetzen. Diese Richtlinie bietet nicht alle Berechtigungen, die zum Starten von Sitzungen über die Session ManagerKonsole und die AWS CLI Konsole erforderlich sind.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 3 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:username}-*" ] } ] }
AWS CLI

Verwenden Sie diese Beispielrichtlinie für Provider-Benutzer, die Sitzungen nur über die AWS CLI starten und wiederaufnehmen können.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 3 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/instance-id", "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" Footnote callout 1 to explain a line in a JSON policy ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] }, { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" Footnote callout 2 to explain a line in a JSON policy ], "Resource": "key-name" } ] }

1 SSM-SessionManagerRunShell ist der Standardname des SSM-Dokuments, das Session Manager zum Speichern Ihrer Sitzungskonfiguration erstellt. Sie können stattdessen ein benutzerdefiniertes Sitzungsdokument erstellen und es in dieser Richtlinie angeben. Sie können das AWS bereitgestellte Dokument auch AWS-StartSSHSession für Benutzer angeben, die Sitzungen mit SSH starten. Weitere Informationen über die für die Unterstützung von Sitzungen mit SSH erforderlichen Konfigurationsschritte finden Sie unter (Optional) Zulassen und Steuern von Berechtigungen für SSH-Verbindungen über Session Manager.

2 Die kms:GenerateDataKey-Berechtigung ermöglicht die Erstellung eines Datenverschlüsselungsschlüssels, der zur Verschlüsselung von Sitzungsdaten verwendet wird. Wenn Sie die Verschlüsselung AWS Key Management Service (AWS KMS) für Ihre Sitzungsdaten verwenden, key-name ersetzen Sie sie durch den Amazon-Ressourcennamen (ARN) des KMS-Schlüssels, den Sie verwenden möchten, im Formatarn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-12345EXAMPLE. Wenn Sie keine KMS-Schlüsselverschlüsselung für Ihre Sitzungsdaten verwenden möchten, entfernen Sie den folgenden Inhalt aus der Richtlinie.

{ "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "key-name" }

Informationen zur Verwendung AWS KMS zur Verschlüsselung von Sitzungsdaten finden Sie unterSo aktivieren Sie die KMS-Schlüsselverschlüsselung von Sitzungsdaten (Konsole).

3 Die Genehmigung für SendCommandist für Fälle erforderlich, in denen ein Benutzer versucht, eine Sitzung von der EC2 Amazon-Konsole aus zu starten, die jedoch Session Manager zunächst auf die erforderliche Mindestversion aktualisiert werden SSM Agent muss. Run Commandwird verwendet, um einen Befehl an die Instance zu senden, um den Agenten zu aktualisieren.

Kurzeinführung in Administratorrichtlinien für Session Manager

Verwenden Sie die folgenden Beispiele, um IAM-Administratorrichtlinien für Session Manager zu erstellen.

Diese Richtlinien bieten Administratoren die Möglichkeit, eine Sitzung für verwaltete Knoten zu starten, die mit Key=Finance,Value=WebServers markiert sind, sowie die Berechtigung zum Erstellen, Aktualisieren und Löschen von Einstellungen und die Berechtigung, nur ihre eigenen Sitzungen zu beenden. Beispiele für Anpassungen, die Sie möglicherweise für die Richtlinie ausführen sollten, finden Sie unter Zusätzliche IAM-Beispielrichtlinien für Session Manager.

Sie können eine Richtlinie erstellen, die es Administratoren ermöglicht, diese Aufgaben nur von der Session Manager Konsole und AWS CLI nur von der EC2 Amazon-Konsole aus oder von allen drei aus auszuführen.

Ersetzen Sie in den folgenden Beispielrichtlinien jede example resource placeholder durch Ihre eigenen Informationen.

Wählen Sie die folgenden Registerkarten aus, um die Beispielrichtlinie für das zu unterstützende Zugriffsszenario anzuzeigen.

Session Manager and CLI

Verwenden Sie diese Beispielrichtlinie für Provider-Administratoren, die sitzungsbezogene Aufgaben nur über die Session Manager-Konsole und die AWS CLI ausführen können. Diese Richtlinie bietet nicht alle erforderlichen Berechtigungen, um sitzungsbezogene Aufgaben von der EC2 Amazon-Konsole aus auszuführen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/Finance": [ "WebServers" ] } } }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Amazon EC2

Verwenden Sie diese Beispielrichtlinie, um Administratoren die Möglichkeit zu geben, sitzungsbezogene Aufgaben nur von der EC2 Amazon-Konsole aus auszuführen. Diese Richtlinie bietet nicht alle Berechtigungen, die zum Ausführen von sitzungsbezogenen Aufgaben über die Session Manager-Konsole und die AWS CLI-Konsole erforderlich sind.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 1 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": [ "ssm:StartSession" ], "Resource": [ "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" ] }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }
Session Manager, CLI, and Amazon EC2

Verwenden Sie diese Beispielrichtlinie, um Administratoren die Möglichkeit zu geben, sitzungsbezogene Aufgaben von der Session Manager Konsole, der und der AWS CLI EC2 Amazon-Konsole aus auszuführen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:StartSession", "ssm:SendCommand" Footnote callout 1 to explain a line in a JSON policy ], "Resource": [ "arn:aws:ec2:region:account-id:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/tag-key": [ "tag-value" ] } } }, { "Effect": "Allow", "Action": ["ssmmessages:OpenDataChannel"], "Resource": ["arn:aws:ssm:*:*:session/${aws:userid}-*"] }, { "Effect": "Allow", "Action": [ "ssm:DescribeSessions", "ssm:GetConnectionStatus", "ssm:DescribeInstanceInformation", "ssm:DescribeInstanceProperties", "ec2:DescribeInstances" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:CreateDocument", "ssm:UpdateDocument", "ssm:GetDocument", "ssm:StartSession" ], "Resource": "arn:aws:ssm:region:account-id:document/SSM-SessionManagerRunShell" }, { "Effect": "Allow", "Action": [ "ssm:TerminateSession", "ssm:ResumeSession" ], "Resource": [ "arn:aws:ssm:*:*:session/${aws:userid}-*" ] } ] }

1 Die Genehmigung für SendCommandist für Fälle erforderlich, in denen ein Benutzer versucht, eine Sitzung von der EC2 Amazon-Konsole aus zu starten, aber SSM Agent zuerst ein Befehl zum Aktualisieren gesendet werden muss.