Ich möchte eine Amazon Elastic Container Service (Amazon ECS)-Aufgabe ausführen, erhalte aber einen „AccessDenied“-Fehler.
Kurzbeschreibung
AccessDenied-Fehler treten auf, wenn die AWS Identity and Access Management (IAM)-Rolle, die deine Amazon ECS-Ressource verwendet, nicht über die erforderlichen Berechtigungen verfügt, um eine Aktion auf einer AWS-Ressource auszuführen. Um dieses Problem zu beheben, füge der IAM-Rolle die fehlenden Berechtigungen hinzu.
Lösung
Um zu bestätigen, dass deine IAM-Rolle nicht über die erforderlichen Berechtigungen verfügt, überprüfe deine Service-Ereignismeldungen und deine Amazon ECS-Aufgabenprotokolle auf Fehler bei gestoppten Aufgaben.
Du erhältst die folgende Fehlermeldung, wenn die IAM-Rolle deiner Amazon ECS-Ressource nicht über die erforderlichen Berechtigungen verfügt:
„User: arn:aws:iam::123456789012:rolename is not authorized to perform: ecs:action on resource: arn:aws:ecs:region:123456789012:resource-type/resource-name“
In der vorherigen Beispielfehlermeldung ist arn:aws:iam::123456789012:rolename die IAM-Rolle, ecs:action die fehlende Berechtigung und arn:aws:ecs:region:123456789012:resource-type/resource-name die betroffene Ressource. Notiere dir diese Werte, um sie in deiner Berechtigungsrichtlinie zu verwenden.
Verwende von Amazon ECS verwaltete Richtlinien
Wenn du IAM-Rollen für Amazon ECS verwendest, empfiehlt es sich, von Amazon ECS verwaltete Richtlinien zu verwenden. Zu den von Amazon ECS verwalteten Richtlinien gehören die am häufigsten erforderlichen Berechtigungen.
Gehe wie folgt vor, um eine von Amazon ECS verwaltete Richtlinie zu verwenden:
- Öffne die IAM-Konsole.
- Wähle im Navigationsbereich Rollen aus.
- Wähle die betroffene IAM-Rolle aus.
- Wähle Berechtigungen hinzufügen und dann Richtlinien direkt anhängen aus.
- Gib in der Suchleiste eine verwaltete Richtlinie ein, die auf den erforderlichen Berechtigungen für die IAM-Rolle basiert, und wähle sie aus.
- Wähle Weiter und dann Berechtigung hinzufügen aus.
- Führe den fehlgeschlagenen Vorgang aus, um die Berechtigungen zu testen.
Erstelle eine Inline-Richtlinie
Um benutzerdefinierte Berechtigungen einzurichten, erstelle eine Inline-Richtlinie, die auf deinen Berechtigungsanforderungen basiert, und hänge die Richtlinie dann der Amazon ECS-IAM-Rolle an.
Ähnliche Informationen
Identitäts- und Zugriffsmanagement für Amazon Elastic Container Service
Wie kann ich meine Amazon ECS-Aufgabe so konfigurieren, dass sie eine IAM-Rolle in einem anderen AWS-Konto übernimmt?