Ich habe meinen AWS-Ressourcen Tags hinzugefügt, aber meine IAM-Richtlinie funktioniert nicht. Welche AWS-Services unterstützen autorisierungsbasierte Tags?

Letzte Aktualisierung: 17.02.2022

Meine Ressourcen sind mit dem richtigen Tag-Schlüssel und -Wert markiert, aber meine Richtlinie für das AWS Identity and Access Management (IAM) wertet die Tags auf meinen Ressourcen nicht aus.

Kurzbeschreibung

IAM-Richtlinien können den globalen Bedingungsschlüssel aws:ResourceTag verwenden, um den Zugriff basierend auf dem Tag-Schlüssel und -Wert der Ressource zu steuern. Nicht alle AWS-Services unterstützen die Tag-Autorisierung. Einige AWS-Ressourcen, wie AWS-Lambda-Funktionen und Warteschlangen des Amazon Simple Queue Service (Amazon SQS), können mit Tags markiert werden. Diese Tags können jedoch nicht in einer IAM-Richtlinie verwendet werden, um den Zugriff auf die Ressourcen zu steuern. Eine Liste der AWS-Services, welche die tagbasierte Autorisierung unterstützen, finden Sie unter AWS-Services, die mit IAM arbeiten.

Lösung

Wenn ein AWS-Service keine tagbasierte Autorisierung unterstützt, sehen Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für den Service nach, welche Berechtigungen und Bedingungsschlüssel auf Ressourcenebene in IAM-Richtlinien unterstützt werden. Einige AWS-Services, wie Überblick über die Verwaltung des Zugriffs in Amazon SQS und identitätsbasierte IAM-Richtlinien für AWS Lambda, verfügen über eine Dokumentation, die Beispiel-IAM-Richtlinien enthält.

Einige Lambda-Aktionen, wie DeleteFunction und PublishVersion, können mithilfe von Berechtigungen auf Ressourcenebene auf eine bestimmte Lambda-Funktion beschränkt werden. Das Anhängen dieser IAM-Richtlinie an einen IAM-Benutzer lässt diese Lambda-Aktionen zu, jedoch nur für eine einzelne Lambda-Funktion.
Hinweis: Bearbeiten Sie die IAM-Richtlinie, um Ihren eigenen ARN der Lambda-Funktion einzubeziehen.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowActionsOnSpecificFunction",
      "Effect": "Allow",
      "Action": [
        "lambda:DeleteFunction",
        "lambda:PublishVersion"
      ],
      "Resource": "arn:aws:lambda:us-west-2:123456789012:function:my-function"
    }
  ]
}