Steuern des Zugriffs auf Wartungsfenster mithilfe der Konsole
Im Folgenden wird beschrieben, wie Sie die erforderlichen Rollen und Berechtigungen für Wartungsfenster mit der AWS Systems Manager-Konsole erstellen.
Themen
- Aufgabe 1: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster-Aufgaben
- Aufgabe 2: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster mithilfe der Konsole
- Aufgabe 3: Bestimmten Benutzern die Berechtigung erteilen, Wartungsfensteraufgaben über die Konsole zu registrieren
- Aufgabe 4: Verhindern, dass bestimmte Benutzer Aufgaben im Wartungsfenster über die Konsole registrieren
Aufgabe 1: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster-Aufgaben
Wartungsfenster-Aufgaben erfordern eine IAM-Rolle, um die Berechtigungen bereitzustellen, die für die Ausführung für die Zielressourcen erforderlich sind. Die Berechtigungen werden durch eine IAM-Richtlinie bereitgestellt, die der Rolle angefügt wird. Die Arten von Aufgaben, die Sie ausführen, und Ihre anderen betrieblichen Anforderungen bestimmen den Inhalt dieser Richtlinie. Wir bieten eine Basisrichtlinie an, die Sie Ihren Bedürfnissen anpassen können. Abhängig von den Aufgaben und Arten von Aufgaben, die Ihre Wartungsfenster ausführen, benötigen Sie möglicherweise nicht alle Berechtigungen in dieser Richtlinie und müssen möglicherweise zusätzliche Berechtigungen einschließen. Sie hängen diese Richtlinie an die Rolle an, die Sie später in Aufgabe 2: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster mithilfe der Konsole erstellen.
Erstellen einer benutzerdefinierten Richtlinie mithilfe der Konsole
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Wählen Sie im Navigationsbereich Richtlinien und dann Richtlinie erstellen.
-
Wählen Sie im Abschnitt Richtlinien-Editor JSON aus.
-
Ersetzen Sie die Standardinhalte durch folgenden Inhalt:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:SendCommand", "ssm:CancelCommand", "ssm:ListCommands", "ssm:ListCommandInvocations", "ssm:GetCommandInvocation", "ssm:GetAutomationExecution", "ssm:StartAutomationExecution", "ssm:ListTagsForResource", "ssm:GetParameters" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "states:DescribeExecution", "states:StartExecution" ], "Resource": [ "arn:aws:states:*:*:execution:*:*", "arn:aws:states:*:*:stateMachine:*" ] }, { "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:*:*:function:*" ] }, { "Effect": "Allow", "Action": [ "resource-groups:ListGroups", "resource-groups:ListGroupResources" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": [ "tag:GetResources" ], "Resource": [ "*" ] }, { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ssm.amazonaws.com" ] } } } ] }
-
Ändern Sie den JSON-Inhalt nach Bedarf für die Wartungsaufgaben, die Sie in Ihrem Konto ausführen. Die Änderungen, die Sie vornehmen, beziehen sich auf Ihre geplanten Abläufe.
Beispielsweise:
-
Sie können Amazon-Ressourcenname (ARN) für bestimmte Funktionen und Zustandsmaschinen angeben, anstatt Platzhalter-Kennzeichner (*) zu verwenden.
-
Wenn Sie keine AWS Step Functions-Aufgaben ausführen möchten, können Sie die
states
-Berechtigungen und (ARNs) entfernen. -
Wenn Sie keine AWS Lambda-Aufgaben ausführen möchten, können Sie die
lambda
-Berechtigungen und ARNs entfernen. -
Wenn Sie keine Automatisierungs-Aufgaben ausführen möchten, können Sie die
ssm:GetAutomationExecution
- undssm:StartAutomationExecution
-Berechtigungen entfernen. -
Fügen Sie zusätzliche Berechtigungen hinzu, die möglicherweise für die Ausführung der Aufgaben erforderlich sind. Manche Automatisierungsaktionen basieren z. B. auf AWS CloudFormation-Stacks. Aus diesem Grund sind die Berechtigungen
cloudformation:CreateStack
,cloudformation:DescribeStacks
undcloudformation:DeleteStack
erforderlich.Als weiteres Beispiel benötigt das Automation-Runbook
AWS-CopySnapshot
Berechtigungen zum Erstellen eines Amazon Elastic Block Store (Amazon EBS)-Snapshots. Daher benötigt die Servicerolle die Berechtigungec2:CreateSnapshot
.Informationen zu den Rollenberechtigungen, die von Automation-Runbooks benötigt werden, finden Sie in den Runbook-Beschreibungen in der Referenz zum AWS Systems Manager-Automation-Runbook..
-
-
Nachdem Sie die Richtlinienüberarbeitungen abgeschlossen haben, wählen Sie Weiter: Tags.
-
Geben Sie für Richtlinienname einen Namen ein, der dies als Richtlinie identifiziert, die von der von Ihnen erstellten Servicerolle verwendet wird. Beispiel:
my-maintenance-window-role-policy
. -
(Optional) Fügen Sie im Bereich Tags hinzufügen ein oder mehrere Tag-Schlüssel-Wert-Paare hinzu, um den Zugriff für diese Richtlinie zu organisieren, zu verfolgen oder zu steuern.
-
Wählen Sie Richtlinie erstellen aus.
Notieren Sie sich den Namen, den Sie für die Richtlinie angegeben haben. Sie beziehen sich im nächsten Verfahren, Aufgabe 2: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster mithilfe der Konsole, darauf.
Aufgabe 2: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster mithilfe der Konsole
Die Richtlinie, die Sie in der vorherigen Aufgabe erstellt haben, ist an die Wartungsfenster-Servicerolle angehängt, die Sie in dieser Aufgabe erstellen. Wenn Benutzer eine Wartungsfenster-Aufgabe registrieren, geben sie diese IAM-Rolle als Teil der Aufgabenkonfiguration an. Die Berechtigungen in dieser Rolle ermöglichen es Systems Manager, Wartungsfenster-Aufgaben in Ihrem Namen auszuführen.
Wichtig
Zuvor bot Ihnen die Systems-Manager-Konsole die Möglichkeit, die von AWS verwaltete serviceverknüpfte IAM-Rolle AWSServiceRoleForAmazonSSM
als Wartungsrolle für Ihre Aufgaben zu verwenden. Die Verwendung dieser Rolle und der zugehörigen Richtlinie, AmazonSSMServiceRolePolicy
, für Wartungsfenster-Aufgaben wird nicht mehr empfohlen. Wenn Sie diese Rolle jetzt für Wartungsfenster-Aufgaben verwenden, empfehlen wir Ihnen, sie nicht mehr zu verwenden. Erstellen Sie stattdessen Ihre eigene IAM-Rolle, die die Kommunikation zwischen Systems Manager und anderen AWS-Services ermöglicht, wenn Ihre Wartungsfenster-Aufgaben ausgeführt werden.
Verwenden Sie das folgende Verfahren, um eine benutzerdefinierte Servicerolle für Maintenance Windows zu erstellen, damit Systems Manager Maintenance Windows-Aufgaben in Ihrem Namen ausführen kann. Sie fügen die Richtlinie, die Sie in der vorherigen Aufgabe erstellt haben, an die von Ihnen erstellte benutzerdefinierte Servicerolle an.
Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster mithilfe der Konsole
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Wählen Sie im Navigationsbereich Rollen und dann Rolle erstellen.
-
Wählen Sie für Select trusted entity (Vertrauenswürdige Entität auswählen) die folgenden Optionen:
-
Wählen Sie unter Vertrauenswürdiger Entitätstyp die Option AWS-Service aus.
-
Wählen Sie für Anwendungsfall Systems Manager aus
-
Wählen Sie Systems Manager aus.
In der folgenden Abbildung wird die Position der Systems-Manager-Option hervorgehoben.
-
-
Wählen Sie Weiter.
-
Geben Sie im Bereich Berechtigungsrichtlinien in das Suchfeld den Namen der Richtlinie ein, die Sie in Aufgabe 1: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster-Aufgaben erstellt haben, aktivieren Sie das Kontrollkästchen neben dem Namen und wählen Sie dann Weiter aus.
-
Geben Sie unter Role name (Rollenname) einen Namen ein, der diese Rolle als Maintenance Windows-Rolle identifiziert. Beispiel:
my-maintenance-window-role
. -
(Optional) Ändern der Standardrollenbeschreibung, um den Zweck dieser Rolle anzuzeigen. Beispiel:
Performs maintenance window tasks on your behalf
. -
Stellen Sie für Schritt 1: Vertrauenswürdige Entitäten auswählen sicher, dass die folgende Richtlinie im Feld Vertrauenswürdige Richtlinie angezeigt wird.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
-
Stellen Sie für Schritt 2: Berechtigungen hinzufügen sicher, dass die Richtlinie, die Sie in Aufgabe 1: Erstellen einer benutzerdefinierten Servicerolle für Wartungsfenster-Aufgaben erstellt haben, vorhanden ist.
-
(Optional) Fügen Sie in Schritt 3: Tags hinzufügen ein oder mehrere Tag-Schlüssel-Wert-Paare hinzu, um den Zugriff für diese Rolle zu organisieren, zu verfolgen oder zu steuern.
-
Wählen Sie Create role (Rolle erstellen) aus. Das System leitet Sie zur Seite Rollen zurück.
-
Wählen Sie den Namen der IAM-Rolle aus, die Sie gerade erstellt haben.
-
Kopieren oder Notieren Sie sich Rollenname und ARN-Wert im Übersicht-Bereich. Benutzer in Ihrem Konto geben diese Informationen an, wenn sie Wartungsfenster erstellen.
Aufgabe 3: Bestimmten Benutzern die Berechtigung erteilen, Wartungsfensteraufgaben über die Konsole zu registrieren
Wenn Sie Benutzern Berechtigungen für den Zugriff auf die Servicerolle des benutzerdefinierten Wartungsfensters erteilen, können sie sie mit ihren Wartungsfenstern verwenden. Dies gilt zusätzlich zu den Berechtigungen, die Sie ihnen bereits zur Arbeit mit den Systems-Manager-API-Befehlen für die Funktion Maintenance Windows aus. Diese IAM-Rolle vermittelt, dass Berechtigungen zum Ausführen einer Wartungsfenster-Aufgabe erforderlich sind. Infolgedessen kann ein Benutzer einem Wartungsfenster mithilfe Ihrer benutzerdefinierten Servicerolle keine Aufgaben registrieren, ohne diese IAM-Berechtigungen übergeben zu können.
Wenn Sie eine Aufgabe bei einem Wartungsfenster registrieren, geben Sie eine Servicerolle an, um die eigentlichen Aufgabenvorgänge auszuführen. Hierbei handelt es sich um die Rolle, die vom Service angenommen wird, wenn Aufgaben in Ihrem Namen ausgeführt werden. Um die Aufgabe selbst zu registrieren, weisen Sie zuvor die IAM-PassRole
-Richtlinie einer IAM-Entität (z. B. einem Benutzer oder einer Gruppe) zu. Dadurch kann die IAM Entität als Teil der Registrierung dieser Aufgaben im Wartungsfenster die Rolle angeben, die beim Ausführen der Aufgaben verwendet werden soll. Weitere Informationen finden Sie unter Erteilen von Berechtigungen, mit denen ein Benutzer eine Rolle an einen AWS-Service übergeben kann im IAM-Benutzerhandbuch.
So konfigurieren Sie Berechtigungen, die es Benutzern ermöglichen, Wartungsfensteraufgaben zu registrieren
Wenn eine IAM-Entität (Benutzer, Rolle oder Gruppe) mit Administratorberechtigungen eingerichtet ist, hat der IAM-Benutzer oder die Rolle Zugriff auf Wartungsfenster. Für Entitäten ohne Administratorberechtigungen muss ein Administrator der IAM-Entität die folgenden Berechtigungen gewähren. Dies sind die Mindestberechtigungen, die erforderlich sind, um Aufgaben in einem Wartungsfenster zu registrieren:
-
Die von
AmazonSSMFullAccess
verwaltete Richtlinie oder eine Richtlinie, die vergleichbare Berechtigungen bereitstellt. -
Die folgenden
iam:PassRole
- undiam:ListRoles
-Berechtigungen.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
account-id
:role/my-maintenance-window-role
" }, { "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "arn:aws:iam::account-id
:role/" }, { "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "arn:aws:iam::account-id
:role/aws-service-role/ssm.amazonaws.com/" } ] }my-maintenance-window-role
repräsentiert den Namen der benutzerdefinierten Wartungsfenster-Servicerolle, die Sie zuvor erstellt haben.account-id
repräsentiert die ID Ihres AWS-Konto. Durch das Hinzufügen dieser Berechtigung für die Ressourcearn:aws:iam::
können Benutzer Kundenrollen in der Konsole anzeigen und auswählen, wenn sie eine Wartungsfensteraufgabe erstellen. Durch das Hinzufügen dieser Berechtigung füraccount-id
:role/arn:aws:iam::
können Benutzer die mit dem Systems Manager-Service verknüpfte Rolle in der Konsole auswählen, wenn sie eine Wartungsfensteraufgabe erstellen.account-id
:role/aws-service-role/ssm.amazonaws.com/Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
-
Benutzer und Gruppen in AWS IAM Identity Center:
Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter Erstellen eines Berechtigungssatzes im AWS IAM Identity Center-Benutzerhandbuch.
-
Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:
Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen im IAM-Benutzerhandbuch.
-
IAM-Benutzer:
-
Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter Eine Rolle für einen IAM-Benutzer erstellen im IAM-Benutzerhandbuch.
-
(Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter Hinzufügen von Berechtigungen zu einem Benutzer (Konsole) im IAM-Benutzerhandbuch.
-
-
Konfigurieren von Berechtigungen für Gruppen, die Wartungsfensteraufgaben registrieren dürfen mithilfe der Konsole
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Klicken Sie im Navigationsbereich auf Benutzergruppen.
-
Wählen Sie in der Gruppenliste den Namen der Gruppe aus, der Sie die
iam:PassRole
-Berechtigung zuweisen möchten, oder erstellen Sie ggf. zunächst eine neue Gruppe -
Wählen Sie auf der Registerkarte Permissions (Berechtigungen) die Optionen Add permissions, Create Inline Policy (Berechtigungen hinzufügen, Inline-Richtlinie erstellen) aus.
-
Wählen Sie im Bereich Richtlinien-Editor JSON und ersetzen Sie den Standardinhalt des Felds durch Folgendes.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::
account-id
:role/my-maintenance-window-role
" }, { "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "arn:aws:iam::account-id
:role/" }, { "Effect": "Allow", "Action": "iam:ListRoles", "Resource": "arn:aws:iam::account-id
:role/aws-service-role/ssm.amazonaws.com/" } ] }my-maintenance-window-role
repräsentiert den Namen der benutzerdefinierten Wartungsfensterrolle, die Sie zuvor erstellt haben.account-id
repräsentiert die ID Ihres AWS-Konto. Durch das Hinzufügen dieser Berechtigung für die Ressourcearn:aws:iam::
können Benutzer Kundenrollen in der Konsole anzeigen und auswählen, wenn sie eine Wartungsfensteraufgabe erstellen. Durch das Hinzufügen dieser Berechtigung füraccount-id
:role/arn:aws:iam::
können Benutzer die mit dem Systems Manager-Service verknüpfte Rolle in der Konsole auswählen, wenn sie eine Wartungsfensteraufgabe erstellen.account-id
:role/aws-service-role/ssm.amazonaws.com/ -
Wählen Sie Weiter.
-
Geben Sie auf der Seite Überprüfen und erstellen einen Namen in das Feld Richtlinenname ein, um diese
PassRole
-Richtlinie zu identifizieren (beispielsweisemy-group-iam-passrole-policy
) und wählen Sie dann Richtlinie erstellen aus.
Aufgabe 4: Verhindern, dass bestimmte Benutzer Aufgaben im Wartungsfenster über die Konsole registrieren
Sie können die ssm:RegisterTaskWithMaintenanceWindow
-Berechtigung für die Benutzer in Ihrem AWS-Konto verweigern, denen Sie keine Aufgaben mit Wartungsfenstern registrieren möchten. Dies bietet eine zusätzliche Verhinderungsebene für Benutzer, die keine Wartungsfenster-Aufgaben registrieren sollten.
Konfigurieren von Berechtigungen für Gruppen, die keine Wartungsfensteraufgaben registrieren dürfen mithilfe der Konsole
Öffnen Sie die IAM-Konsole unter https://console.aws.amazon.com/iam/
. -
Klicken Sie im Navigationsbereich auf Benutzergruppen.
-
Wählen Sie in der Gruppenliste den Namen der Gruppe aus, der Sie die
ssm:RegisterTaskWithMaintenanceWindow
-Berechtigung verweigern möchten, oder erstellen Sie ggf. zunächst eine neue Gruppe. -
Wählen Sie auf der Registerkarte Permissions (Berechtigungen) die Optionen Add permissions, Create Inline Policy (Berechtigungen hinzufügen, Inline-Richtlinie erstellen) aus.
-
Wählen Sie im Bereich Richtlinien-Editor JSON und ersetzen Sie dann den Standardinhalt des Felds durch Folgendes.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "ssm:RegisterTaskWithMaintenanceWindow", "Resource": "*" } ] }
-
Wählen Sie Weiter.
-
Geben Sie auf der Seite Überprüfen und Erstellen bei Richtlinienname einen Namen ein, um diese Richtlinie zu identifizieren (beispielsweise
my-groups-deny-mw-tasks-policy
) und wählen Sie dann Richtlinie erstellen aus.