Wie behebe ich die Fehler „Weder der globale Service-Prinzipal „states.amazonaws.com“ noch der regionale Service-Prinzipal sind berechtigt, die bereitgestellte Rolle zu übernehmen“ in AWS Step Functions?

Lesedauer: 2 Minute
0

Wenn ich versuche, meine AWS Step Functions-Zustandsmaschine auszuführen, erhalte ich die folgende Fehlermeldung: „Weder der globale Service-Prinzipal „states.amazonaws.com“ noch der regionale Service-Prinzipal sind berechtigt, die bereitgestellte Rolle zu übernehmen.“ Wie behebe ich das Problem?

Lösung

Stellen Sie sicher, dass für die AWS IAM-Rolle (Identity and Access Management), die Ihre Zustandsmaschine annimmt, die erforderlichen Vertrauensbeziehungen konfiguriert sind

In der Vertrauensrichtlinie der IAM-Rolle muss eine der folgenden Einheiten als vertrauenswürdige Entität aufgeführt sein:

  • Ein regionaler AWS-Endpunkt: states.<region>.amazonaws.com
  • Der globale AWS-Endpunkt: states.amazonaws.com

Um die Vertrauensrichtlinie der IAM-Rolle, die Ihre Zustandsmaschine annimmt, zu überprüfen und zu bearbeiten, befolgen Sie die Anweisungen unter Ändern einer Rollen-Vertrauensrichtlinie (Konsole). Weitere Informationen finden Sie unter So funktioniert AWS Step Functions mit IAM.

**Hinweis:**Wenn die StartExecution-API-Aktion aufgerufen wird, verwendet Step Functions die IAM-Rolle, die der Zustandsmaschine während der Laufzeit der Aktion zugeordnet ist. Wenn die IAM-Rolle, die die Zustandsmaschine annimmt, während der Laufzeit der Aktion geändert wird, wird die IAM-Rolle für diese API-Aktion nicht verwendet.

Stellen Sie sicher, dass die IAM-Rolle, die Ihre Zustandsmaschine annimmt, noch vorhanden ist

1.Öffnen Sie die Step Functions-Konsole.

2.Wählen Sie im linken Navigationsbereich Zustandsmaschinen aus.

3.Wählen Sie den Namen Ihrer Zustandsmaschine aus.

4.Wählen Sie im Abschnitt Details den Link unter IAM-Rolle ARN aus. Wenn die IAM-Rolle vorhanden ist, wird die Rolle in der IAM-Konsole geöffnet. Wenn die IAM-Rolle nicht vorhanden ist, öffnet die IAM-Konsole eine Seite mit der Aufschrift Keine Entität gefunden.

Wenn die von Ihrer Zustandsmaschine angenommene IAM-Rolle nicht vorhanden ist, erstellen Sie eine neue IAM-Rolle mit einem anderen Namen, die die erforderlichen Berechtigungen enthält. Konfigurieren Sie dann Ihre Zustandsmaschine so, dass sie die neue IAM-Rolle annimmt, die Sie erstellt haben. Weitere Informationen finden Sie unter So funktioniert AWS Step Functions mit IAM.

**Wichtig:**Die neue IAM-Rolle, die Sie erstellen, muss einen anderen Namen haben als die vorherige IAM-Rolle.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren