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 Lebenszyklus von Anfragen verstehen
Bevor Sie Ihre Integration erstellen, ist es wichtig zu verstehen, wie sich Delegierungsanfragen von der Erstellung bis zum Abschluss entwickeln.
Staaten anfragen
Ein Delegierungsantrag durchläuft die folgenden Staaten:
| Status | Description |
|---|---|
| Nicht zugewiesen | Anfrage erstellt, aber noch nicht mit einem Kundenkonto und einem IAM-Prinzipal verknüpft. Die Anfrage wurde möglicherweise ohne Angabe eines Zielkontos oder mit einer Zielkonto-ID erstellt, aber vom Kontoinhaber noch nicht beansprucht. |
| Zugewiesen | Anfrage, die mit einem Kundenkonto verknüpft ist und auf Überprüfung wartet |
| Ausstehende Genehmigung | 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 |
| Abgeschlossen | Exchange-Token für den Produktanbieter freigegeben. Die Delegationsfrist (Gültigkeit des Austausch-Tokens) beginnt, wenn die Anfrage den Status Finalisiert erreicht |
| Rejected (Abgelehnt) | Anfrage 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 → Ausstehende Genehmigung: Der Kunde genehmigt die Anfrage direkt ODER leitet sie zur Prüfung an den Administrator weiter
Ausstehende Genehmigung → Akzeptiert: Der Administrator genehmigt die Anfrage
Akzeptiert → Finalisiert: Der Kunde gibt das Exchange-Token frei
Pfad der Ablehnung
Zugewiesen → Abgelehnt: Der Kunde lehnt die Anfrage ab
Ausstehende Genehmigung → 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)
Ausstehende Genehmigung → Abgelaufen (7 Tage)
Akzeptiert → Abgelaufen (7 Tage)
Abgelehnt → Abgelaufen (7 Tage)
Abgeschlossen → Abgelaufen (7 Tage)
Status der Endgeräte
Die folgenden Zustände sind terminal (keine weiteren Übergänge):
Abgeschlossen: Exchange-Token gesendet
Abgelehnt: Anfrage wurde abgelehnt
Abgelaufen: Bei der Anfrage ist das Zeitlimit überschritten oder der Delegierungszeitraum ist abgelaufen
Abgelaufene Anfragen werden nach Ablauf der Aufbewahrungsfrist schließlich aus dem System gelöscht.
Verwaltung der Status von Delegierungsanfragen in Ihrer Bewerbung
Als Partner müssen Sie den Status von Delegierungsanfragen in Ihrem System verfolgen und Ihren Kunden mitteilen. Wenn Sie SNS-Benachrichtigungen über Statusänderungen erhalten, speichern Sie diese Aktualisierungen in Ihrem Backend und spiegeln sie in Ihrer kundenorientierten Benutzeroberfläche wider. Achten Sie besonders auf den Status „Ausstehende Genehmigung“. Wenn ein Kunde eine Anfrage zur Überprüfung an einen Administrator AWS weiterleitet, erhalten Sie eine Benachrichtigung über ausstehende Genehmigung. Anfragen können bis zu 7 Tage in diesem Status verbleiben, während sie auf eine Administratoraktion warten. Zeigen Sie den Kunden während dieser Zeit in Ihrer Anwendung, dass ihre Anfrage noch von einem Administrator genehmigt werden muss. Erwägen Sie, einen Deep-Link zur AWS Konsole bereitzustellen, ü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, den State-Machine in Ihrem Backend richtig zu handhaben 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 ARN für ein SNS-Thema aus Ihrem registrierten Konto angeben. AWS 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 dürfen sich nicht in AWS Opt-in-Regionen befinden. Ihr SNS-Thema muss sich in einer AWS Region befinden, die standardmäßig aktiviert ist. Eine Liste der Opt-in-Regionen findest du unter AWS Regionen verwalten im Handbuch zur AWS Kontoverwaltung.
SNS-Thema: Konfiguration
Um Benachrichtigungen über Delegierungsanfragen zu erhalten, müssen Sie Ihr SNS-Thema so konfigurieren, dass IAM-Berechtigungen zum Veröffentlichen von Nachrichten an das Thema erteilt werden. Fügen Sie Ihrer SNS-Themenrichtlinie die folgende Grundsatzerklä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 richtig konfiguriert ist, erhalten Sie keine Benachrichtigungen über Statusänderungen oder 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, Ausstehende Genehmigung, 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 benötigen, um Anmeldeinformationen zu erhalten.
Staaten der Benachrichtigung
Sie erhalten Benachrichtigungen für die folgenden Staaten der Delegierungsanfrage:
| Status | Art der Benachrichtigung | Description |
|---|---|---|
| ZUGEWIESEN | StateChange | Die Anfrage wurde mit einem Kundenkonto verknüpft |
| AUSSTEHENDE GENEHMIGUNG | StateChange | Der Kunde hat die Anfrage zur Genehmigung an einen Administrator weitergeleitet |
| AKZEPTIERT | StateChange | Der Kunde hat die Anfrage genehmigt, das Token jedoch 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 Standard-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-Delegierungsanforderung |
| RequestorWorkflowId | Zeichenfolge | Die Workflow-ID, die Sie beim Erstellen der Anfrage angegeben haben |
| Status | Zeichenfolge | Aktueller Status der Anfrage |
| OwnerAccountId | Zeichenfolge | AWS Konto-ID des Kunden |
| UpdatedAt | Zeichenfolge | Zeitstempel, als sich der Status geändert hat (ISO 8601-Format) |
Zusätzliche Felder (nur ExchangeToken Benachrichtigungen)
| Feld | Typ | Description |
|---|---|---|
| ExchangeToken | Zeichenfolge | Das Token, das mithilfe der 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 ausgegeben, wenn ein Kunde eine Delegierungsanfrage akzeptiert und abschließt. Der Produktanbieter verwendet dieses Exchange- oder Trade-In-Token, um die AWS STS GetDelegatedAccessToken API aufzurufen und temporäre AWS Anmeldeinformationen mit den vom Kunden genehmigten Berechtigungen zu erhalten. Das Exchange-Token selbst gewährt keinen Zugriff auf Ihre AWS Ressourcen; es muss über AWS STS gegen tatsächliche Anmeldeinformationen ausgetauscht 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, wodurch sichergestellt wird, dass nur der autorisierte Produktanbieter Anmeldeinformationen für den Zugriff auf das Kundenkonto erhalten kann.
Dauer des Zugriffs
Die Delegationsfrist 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+genehmigter Zeitraum
Der Produktanbieter kann das Token vor Ablauf mehrmals austauschen, um bei Bedarf neue Zugangsdaten zu erhalten
Mehrere Einlösungen
Produktanbieter können das Token während des Gültigkeitszeitraums mehrmals austauschen, um neue Anmeldeinformationen zu erhalten. Alle Anmeldeinformationen, die mit demselben Exchange-Token abgerufen wurden, laufen jedoch gleichzeitig ab, je nachdem, wann Sie das Token freigegeben haben.
Beispiel: Wenn Sie eine zweistündige Delegierungsanfrage genehmigen und das Token um 10:00 Uhr freigeben:
| Zeitpunkt der Freigabe des Tokens | Zeit des Token-Austauschs | 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 ist abgelaufen) | 0 Minuten |
Wie in der Tabelle dargestellt, führt der Austausch des Tokens zu einem späteren Zeitpunkt des Gültigkeitszeitraums zu einer geringeren Nutzungsdauer für den Produktanbieter.