Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Aufbau Ihrer Integration
Den Anforderungslebenszyklus verstehen
Bevor Sie Ihre Integration erstellen, ist es wichtig zu verstehen, wie Delegierungsanfragen von der Erstellung bis zum Abschluss voranschreiten.
Staaten der Anfrage
Ein Delegierungsantrag wird in den folgenden Staaten bearbeitet:
| Status | Description |
|---|---|
| Nicht zugewiesen | Die Anfrage wurde erstellt, aber noch nicht mit einem Kundenkonto und einem IAM-Principal verknüpft. Die Anfrage wurde möglicherweise ohne Angabe eines Zielkontos oder mit einer Zielkonto-ID erstellt, aber noch nicht vom Kontoinhaber beansprucht. |
| Zugewiesen | Anfrage, die mit einem Kundenkonto verknüpft ist und noch geprüft werden muss |
| Genehmigung steht noch aus | Der Kunde hat die Anfrage zur Genehmigung an einen Administrator weitergeleitet |
| Accepted (Akzeptiert) | Die Anfrage wurde vom Kunden genehmigt, das Exchange-Token wurde jedoch noch nicht veröffentlicht |
| Finalisiert | Exchange-Token für den Produktanbieter freigegeben. Der Delegierungszeitraum (Gültigkeit des Exchange-Tokens) beginnt, wenn die Anfrage den Status Finalized erreicht |
| Rejected (Abgelehnt) | Die Anfrage wurde vom Kunden abgelehnt |
| Expired | Die Anfrage ist aufgrund von Inaktivität oder Timeout abgelaufen |
Zustandsübergänge
Normaler Ablauf (Genehmigungspfad)
Nicht zugewiesen → Zugewiesen: Der Kunde ordnet die Anfrage seinem Konto zu
Zugewiesen → Akzeptiert ODER Zugewiesen → Genehmigung steht noch aus: Der Kunde genehmigt die Anfrage direkt ODER leitet sie zur Prüfung an den Administrator weiter
Genehmigung ausstehend → Akzeptiert: Der Administrator genehmigt die Anfrage
Akzeptiert → Abgeschlossen: Der Kunde gibt das Exchange-Token frei
Pfad der Ablehnung
Zugewiesen → Abgelehnt: Der Kunde lehnt die Anfrage ab
Genehmigung steht aus → Abgelehnt: Der Administrator lehnt die Anfrage ab
Akzeptiert → Abgelehnt: Der Kunde widerruft die Genehmigung, bevor er das Token freigibt
Ablaufpfad
Anfragen laufen automatisch ab, wenn innerhalb des angegebenen Zeitraums keine Maßnahmen ergriffen werden:
Nicht zugewiesen → Abgelaufen (1 Tag)
Zugewiesen → Abgelaufen (7 Tage)
Genehmigung steht noch aus → Abgelaufen (7 Tage)
Akzeptiert → Abgelaufen (7 Tage)
Abgelehnt → Abgelaufen (7 Tage)
Abgeschlossen → Abgelaufen (7 Tage)
Endstaaten
Die folgenden Zustände sind endständig (keine weiteren Übergänge):
Finalisiert: Exchange-Token gesendet
Abgelehnt: Anfrage wurde abgelehnt
Abgelaufen: Das Zeitlimit für die Anfrage wurde überschritten oder der Delegierungszeitraum wurde beendet
Abgelaufene Anfragen werden schließlich nach Ablauf der Aufbewahrungsfrist aus dem System gelöscht.
Status von Delegierungsanfragen in Ihrer Anwendung verwalten
Als Partner müssen Sie den Status der Delegierungsanfragen in Ihrem System nachverfolgen und Ihren Kunden mitteilen. Wenn Sie SNS-Benachrichtigungen über Statusänderungen erhalten, speichern Sie diese Aktualisierungen in Ihrem Backend und geben sie in Ihrer kundenorientierten Benutzeroberfläche wieder. Achten Sie besonders auf den Status „Ausstehende Genehmigung“. Wenn ein Kunde eine Anfrage zur Überprüfung an einen Administrator weiterleitet, AWS sendet er Ihnen eine Benachrichtigung über ausstehende Genehmigung. Anfragen können bis zu 7 Tage in diesem Status verbleiben, bis der Administrator aktiv wird. Zeigen Sie den Kunden während dieser Zeit in Ihrer Anwendung, dass ihre Anfrage noch vom Administrator genehmigt werden muss. Erwägen Sie die Bereitstellung eines Deep-Links zur AWS Konsole, über den Kunden den Status der Anfrage überprüfen oder sich mit ihrem Administrator in Verbindung setzen können. Für ein gutes Integrationserlebnis ist es wichtig, mit der Zustandsmaschine in Ihrem Backend richtig umzugehen und den Kunden in jeder Phase die richtigen Statusinformationen zur Verfügung zu stellen.
Konfigurieren von -Benachrichtigungen
IAM verwendet Amazon Simple Notification Service (SNS), um Ihnen Statusänderungen der Delegierungsanfrage mitzuteilen. Wenn Sie eine Delegierungsanfrage erstellen, müssen Sie einen SNS-Themen-ARN von Ihrem registrierten AWS Konto aus angeben. IAM veröffentlicht Nachrichten zu diesem Thema bei wichtigen Ereignissen, z. B. wenn Kunden Anfragen genehmigen oder ablehnen und wenn das Exchange-Token bereit ist.
Anmerkung
SNS-Themen können nicht in AWS Opt-in-Regionen enthalten sein. Ihr SNS-Thema muss sich in einer AWS Region befinden, die standardmäßig aktiviert ist. Eine Liste der Regionen, für die Sie sich anmelden können, finden Sie im Leitfaden zur AWS Kontoverwaltung unter AWS Regionen verwalten.
Konfiguration des SNS-Themas
Um Benachrichtigungen über Delegierungsanfragen zu erhalten, müssen Sie Ihr SNS-Thema so konfigurieren, dass IAM-Berechtigungen zum Veröffentlichen von Nachrichten an dieses Thema erteilt werden. Fügen Sie Ihrer SNS-Themenrichtlinie die folgende Richtlinienerklärung hinzu:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowIAMServiceToPublish", "Effect": "Allow", "Principal": { "Service": "iam.amazonaws.com" }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:REGION:ACCOUNT-ID:TOPIC-NAME" } ] }
Wichtig
Das SNS-Thema muss sich in einem Ihrer registrierten AWS Konten befinden. IAM akzeptiert keine SNS-Themen von anderen Konten. Wenn die Themenrichtlinie nicht korrekt konfiguriert ist, erhalten Sie weder Benachrichtigungen über Statusänderungen noch das Exchange-Token.
Arten von Benachrichtigungen
IAM sendet zwei Arten von Benachrichtigungen:
StateChange Benachrichtigungen
Wird gesendet, wenn eine Delegierungsanfrage in einen neuen Status übergeht („Zugewiesen“, „Genehmigung ausstehend“, „Akzeptiert“, „Abgeschlossen“, „Abgelehnt“, „Abgelaufen“).
ExchangeToken Benachrichtigungen
Wird gesendet, wenn ein Kunde das Delegierungstoken freigibt (Status Finalisiert). Diese Benachrichtigung enthält das Exchange-Token, das Sie zum Abrufen von Anmeldeinformationen benötigen.
In der Benachrichtigung heißt es
Sie erhalten Benachrichtigungen für die folgenden Staaten mit Delegierungsanfragen:
| Status | Art der Benachrichtigung | Description |
|---|---|---|
| ZUGEWIESEN | StateChange | Die Anfrage wurde mit einem Kundenkonto verknüpft |
| NOCH AUSSTEHENDE GENEHMIGUNG | StateChange | Der Kunde hat die Anfrage zur Genehmigung an einen Administrator weitergeleitet |
| AKZEPTIERT | StateChange | Der Kunde hat die Anfrage genehmigt, das Token aber noch nicht freigegeben |
| ABGESCHLOSSEN | StateChange | Der Kunde hat das Exchange-Token veröffentlicht |
| ABGESCHLOSSEN | ExchangeToken | Diese Benachrichtigung enthält das Exchange-Token |
| ABGELEHNT | StateChange | Der Kunde hat die Anfrage abgelehnt |
| ABGELAUFEN | StateChange | Die Anfrage ist vor Abschluss abgelaufen |
Format der Benachrichtigungsnachricht
IAM veröffentlicht standardmäßige SNS-Benachrichtigungen. Die Informationen zur Delegierungsanfrage sind im Nachrichtenfeld als JSON-Zeichenfolge enthalten.
Allgemeine Felder (Alle Benachrichtigungen)
| Feld | Typ | Description |
|---|---|---|
| Typ | Zeichenfolge | Entweder "StateChange" oder "ExchangeToken“ |
| RequestId | Zeichenfolge | Die ID der IAM-Delegierungsanfrage |
| RequestorWorkflowId | Zeichenfolge | Die Workflow-ID, die Sie bei der Erstellung der Anfrage angegeben haben |
| Status | Zeichenfolge | Aktueller Status der Anfrage |
| OwnerAccountId | Zeichenfolge | AWS Konto-ID des Kunden |
| UpdatedAt | Zeichenfolge | Zeitstempel der Statusänderung (ISO 8601-Format) |
Zusätzliche Felder (nur ExchangeToken Benachrichtigungen)
| Feld | Typ | Description |
|---|---|---|
| ExchangeToken | Zeichenfolge | Das Token, das über die AWS STS GetDelegatedAccessToken API gegen Anmeldeinformationen ausgetauscht werden soll |
| ExpiresAt | Zeichenfolge | Wenn der delegierte Zugriff abläuft (ISO 8601-Format) |
Beispielbenachrichtigungen
StateChange Benachrichtigung
{ "Type": "Notification", "MessageId": "61ee8ad4-6eec-56b5-8f3d-eba57556aa13", "TopicArn": "arn:aws:sns:us-east-1:123456789012:partner-notifications", "Message": "{\"RequestorWorkflowId\":\"workflow-12345\",\"Type\":\"StateChange\",\"RequestId\":\"dr-abc123\",\"State\":\"ACCEPTED\",\"OwnerAccountId\":\"111122223333\",\"UpdatedAt\":\"2025-01-15T10:30:00.123Z\"}", "Timestamp": "2025-01-15T10:30:00.456Z", "SignatureVersion": "1", "Signature": "...", "SigningCertURL": "...", "UnsubscribeURL": "..." }
ExchangeToken Benachrichtigung
{ "Type": "Notification", "MessageId": "e44e5435-c72c-5333-aba3-354406782f5b", "TopicArn": "arn:aws:sns:us-east-1:123456789012:partner-notifications", "Message": "{\"RequestId\":\"dr-abc123\",\"RequestorWorkflowId\":\"workflow-12345\",\"State\":\"FINALIZED\",\"OwnerAccountId\":\"111122223333\",\"ExchangeToken\":\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...\",\"ExpiresAt\":\"2025-01-15T18:30:00.123Z\",\"UpdatedAt\":\"2025-01-15T10:30:00.456Z\",\"Type\":\"ExchangeToken\"}", "Timestamp": "2025-01-15T10:30:00.789Z", "SignatureVersion": "1", "Signature": "...", "SigningCertURL": "...", "UnsubscribeURL": "..." }
Tokens austauschen
Ein Exchange-Token oder ein Trade-In-Token wird von IAM ausgestellt, wenn ein Kunde eine Delegierungsanfrage akzeptiert und abschließt. Der Produktanbieter verwendet dieses Tausch- oder Trade-In-Token, um die AWS AWS STS GetDelegatedAccessToken API aufzurufen, um temporäre AWS Anmeldeinformationen mit den vom Kunden genehmigten Berechtigungen abzurufen. Das Exchange-Token selbst gewährt keinen Zugriff auf Ihre AWS Ressourcen. Es muss über AWS STS gegen tatsächliche Anmeldeinformationen eingetauscht werden.
Das Exchange-Token kann nur von dem Konto des Produktanbieters eingelöst werden, das die Delegierungsanfrage erstellt hat. Das anfordernde Konto ist in das Token eingebettet, sodass nur der autorisierte Produktanbieter Anmeldeinformationen für den Zugriff auf das Kundenkonto erhalten kann.
Dauer des Zugriffs
Die Delegierungsfrist beginnt, wenn der Kunde das Exchange-Token freigibt, nicht wenn der Produktanbieter es einlöst. Sobald der Kunde das Token freigibt:
Der Produktanbieter erhält das Token per SNS-Benachrichtigung
Sie können es sofort gegen Anmeldeinformationen eintauschen
Anmeldeinformationen laufen ab am: Veröffentlichungszeit+Gültigkeitsdauer der Genehmigung
Der Produktanbieter kann das Token vor Ablauf mehrmals austauschen, um bei Bedarf neue Anmeldeinformationen zu erhalten
Mehrfache Einlösungen
Produktanbieter können den Token während des Gültigkeitszeitraums mehrmals eintauschen, um neue Anmeldeinformationen zu erhalten. Alle Anmeldeinformationen, die mit demselben Exchange-Token abgerufen wurden, laufen jedoch zur gleichen Zeit ab, je nachdem, wann Sie das Token veröffentlicht haben.
Beispiel: Wenn Sie eine zweistündige Delegierungsanfrage genehmigen und das Token um 10:00 Uhr freigeben:
| Zeit der Token-Veröffentlichung | Zeit für den Token-Austausch | Ablauf der Anmeldedaten | Nutzbare Zeit |
|---|---|---|---|
| 10:00 Uhr | 10:00 Uhr | 12:00 pm | 2 Stunden |
| 10:00 Uhr | 10:20 Uhr | 12:00 pm | 1 Stunde 40 Minuten |
| 10:00 Uhr | 11:40 Uhr | 12:00 pm | 20 Minuten |
| 10:00 Uhr | 12:10 Uhr | Fehlgeschlagen (Token abgelaufen) | 0 Minuten |
Wie in der Tabelle dargestellt, führt der Austausch des Tokens zu einem späteren Zeitpunkt im Gültigkeitszeitraum zu einer kürzeren Nutzungszeit für den Produktanbieter.