Wie erstelle ich eine IAM-Richtlinie, um den Zugriff auf Amazon EC2-Ressourcen mithilfe von Tags zu steuern?

Lesedauer: 3 Minute
0

Ich möchte eine AWS Identity and Access Management (IAM)-Richtlinie erstellen, die den Zugriff auf Amazon Elastic Compute Cloud (Amazon EC2)-Instances über Tags steuert.

Kurzbeschreibung

Steuern Sie den Zugriff auf kleinere Bereitstellungen von Amazon-EC2-Instances wie folgt:

  1. Fügen Sie den Instances, auf die Sie Benutzern oder Gruppen Zugriff gewähren möchten, ein bestimmtes Tag hinzu.
  2. Erstellen Sie eine IAM-Richtlinie, die Zugriff auf alle Instances mit dem gewählten Tag gewährt.
  3. Hängen Sie die IAM-Richtlinie an die Benutzer oder Gruppen an, die auf die Instances zugreifen sollen.

Behebung

Hinzufügen eines Tags zu einer Gruppe von EC2-Instances

Öffnen Sie die Amazon-EC2-Konsole. Fügen Sie Tags zu der Gruppe von EC2-Instances hinzu, auf die Sie den Benutzern oder Gruppen Zugriff gewähren wollen. Wenn Sie noch kein Tag haben, erstellen Sie eines.
Hinweis: Beachten Sie unbedingt die Einschränkungen für Tags, bevor Sie Ihre Ressourcen taggen. Bei Amazon EC2-Tags wird zwischen Groß- und Kleinschreibung unterschieden.

Erstellen einer IAM-Richtlinie, die Zugriff auf Instances mit dem gewählten Tag gewährt

Erstellen Sie eine IAM-Richtlinie, die folgende Bedingungen erfüllt:

  • Ermöglicht die Kontrolle über die Instances mit dem Tag.
  • Enthält eine bedingte Anweisung, die den Zugriff auf Amazon EC2-Ressourcen ermöglicht, wenn der Wert des Bedingungsschlüssels ec2:ResourceTag/UserName mit der Richtlinienvariablen aws:username übereinstimmt. Die Richtlinienvariable ${aws:username} wird bei der Bewertung der Richtlinie durch IAM mit dem Anzeigenamen des aktuellen IAM-Benutzers ersetzt.
  • Ermöglicht den Zugriff auf die ec2:Describe*-Aktionen für Amazon EC2-Ressourcen.
  • Verweigert explizit den Zugriff auf die Aktionen ec2:CreateTags und ec2:DeleteTags, um zu verhindern, dass Benutzer Tags erstellen oder löschen. Dadurch wird verhindert, dass ein Benutzer die Kontrolle über eine EC2-Instance übernimmt, indem er ihr das spezifische Tag hinzufügt.

Die fertige Richtlinie sieht etwa wie folgt aus:

Hinweis: Diese Richtlinie gilt für Amazon EC2-Instances, die den Bedingungsschlüssel ec2:ResourceTag verwenden. Informationen zum Einschränken des Starts neuer Amazon EC2-Instances mithilfe von Tags finden Sie unter Wie kann ich IAM-Richtlinien-Tags verwenden, um einzuschränken, wie eine EC2-Instance oder ein EBS-Volume erstellt werden kann?

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ec2:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "ec2:ResourceTag/UserName": "${aws:username}"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "ec2:Describe*",
      "Resource": "*"
    },
    {
      "Effect": "Deny",
      "Action": [
        "ec2:CreateTags",
        "ec2:DeleteTags"
      ],
      "Resource": "*"
    }
  ]
}

Hinweis: Verwenden Sie für Prinzipale, die keine IAM-Benutzer sind, wie z. B. IAM Identity Center-Berechtigungssätze oder Verbundbenutzer, die Variable aws:userid anstelle von aws:username. Die Variable aws:userid hat den Wert account:caller-specified-name. Weitere Informationen finden Sie unter IAM-Richtlinienelemente: Variablen und Tags und Wie verwende ich IAM-Richtlinienvariablen mit Verbundbenutzern?

Anhängen der IAM-Richtlinie an die Benutzer oder Gruppen, die auf die Instances zugreifen sollen

Hängen Sie die IAM-Richtlinie an die Benutzer oder Gruppen an, die auf die Instances zugreifen sollen. Sie können die AWS-Managementkonsole, AWS CLI oder die AWS-API verwenden, um die IAM-Richtlinie anzuhängen.

Verwandte Informationen

Erteilen der erforderlichen Berechtigungen für Amazon EC2-Ressourcen

IAM-Richtlinien für Amazon EC2

IAM-Tutorial: Definieren Sie Berechtigungen für den Zugriff auf AWS-Ressourcen auf der Grundlage von Tags