Verwendung der Verbreitung vertrauenswürdiger Identitäten mit AWS verwalteten Anwendungen - AWS IAM Identity Center

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.

Verwendung der Verbreitung vertrauenswürdiger Identitäten mit AWS verwalteten Anwendungen

Die Verbreitung vertrauenswürdiger Identitäten ermöglicht AWS es einer verwalteten Anwendung, im Namen eines Benutzers Zugriff auf Daten in AWS Diensten anzufordern. Die Verwaltung des Datenzugriffs basiert auf der Identität eines Benutzers, sodass Administratoren Zugriff auf der Grundlage der vorhandenen Benutzer- und Gruppenmitgliedschaften gewähren können. Die Identität des Benutzers, die in seinem Namen ausgeführten Aktionen und andere Ereignisse werden in dienstspezifischen Protokollen und CloudTrail Ereignissen aufgezeichnet.

Die Verbreitung vertrauenswürdiger Identitäten basiert auf dem OAuth 2.0-Standard. Um diese Funktion nutzen zu können, müssen AWS verwaltete Anwendungen in IAM Identity Center integriert werden. AWS Analysedienste können treiberbasierte Schnittstellen bereitstellen, die es einer kompatiblen Anwendung ermöglichen, vertrauenswürdige Identitätsverbreitung zu nutzen. JDBC-, ODBC- und Python-Treiber ermöglichen es kompatiblen Abfragetools beispielsweise, vertrauenswürdige Identitätsverbreitung zu verwenden, ohne dass Sie zusätzliche Einrichtungsschritte ausführen müssen.

Richten Sie AWS verwaltete Anwendungen für die Verbreitung vertrauenswürdiger Identitäten ein

AWS Dienste, die die Verbreitung vertrauenswürdiger Identitäten unterstützen, bieten eine administrative Benutzeroberfläche und APIs, mit denen Sie diese Funktion einrichten können. Für diese Dienste ist keine Konfiguration innerhalb von IAM Identity Center erforderlich.

Im Folgenden wird der allgemeine Prozess zur Einrichtung eines AWS Dienstes für die Verbreitung vertrauenswürdiger Identitäten beschrieben. Die spezifischen Schritte hängen von der administrativen Oberfläche und den APIs ab, die von der Anwendung bereitgestellt werden.

  1. Verwenden Sie die Anwendungskonsole oder APIs, um die Anwendung mit Ihrer Instanz von IAM Identity Center zu verbinden

    Verwenden Sie die Konsole für die AWS verwaltete Anwendung oder die Anwendungs-APIs, um die Anwendung mit Ihrer IAM Identity Center-Instanz zu verbinden. Wenn Sie die Konsole für die Anwendung verwenden, enthält die administrative Benutzeroberfläche ein Widget, das den Einrichtungs- und Verbindungsprozess optimiert.

  2. Verwenden Sie die Anwendungskonsole oder APIs, um den Benutzerzugriff auf die Ressourcen der Anwendung einzurichten

    Führen Sie diesen Schritt aus, um zu autorisieren, auf welche Ressourcen oder Daten ein Benutzer zugreifen kann. Der Zugriff basiert auf der Identität des Benutzers oder der Gruppenmitgliedschaft. Das Autorisierungsmodell variiert je nach Anwendung.

    Wichtig

    Sie müssen diesen Schritt abschließen, damit Benutzer auf die Ressourcen des AWS Dienstes zugreifen können. Andernfalls können Benutzer nicht auf Ressourcen zugreifen, selbst wenn die anfordernde Anwendung autorisiert ist, Zugriff auf den Dienst anzufordern.

Anfragen zur Weitergabe vertrauenswürdiger Identitäten laufen für AWS verwaltete Anwendungen ab

Alle Datenflüsse zur Weitergabe vertrauenswürdiger AWS Identitäten an verwaltete Anwendungen müssen mit einer Anwendung beginnen, die ein Token von IAM Identity Center erhält. Dieses Token ist erforderlich, da es einen Verweis auf einen Benutzer enthält, der dem IAM Identity Center und den Anwendungen, die bei IAM Identity Center registriert sind, bekannt ist.

In den folgenden Abschnitten wird beschrieben, wie eine AWS verwaltete Anwendung ein Token vom IAM Identity Center abrufen kann, um die Verbreitung vertrauenswürdiger Identitäten zu initiieren.

Webbasierte IAM Identity Center-Authentifizierung

Für diesen Ablauf bietet die AWS verwaltete Anwendung ein webbasiertes Single Sign-On-Erlebnis mit IAM Identity Center zur Authentifizierung.

Wenn ein Benutzer eine AWS verwaltete Anwendung öffnet, wird ein Single Sign-On-Flow ausgelöst, der IAM Identity Center verwendet. Wenn es keine aktive Sitzung für den Benutzer in IAM Identity Center gibt, wird dem Benutzer eine Anmeldeseite angezeigt, die auf der von Ihnen angegebenen Identitätsquelle basiert, und IAM Identity Center erstellt eine Sitzung für den Benutzer.

IAM Identity Center stellt der AWS verwalteten Anwendung ein Token zur Verfügung, das die Identität des Benutzers und eine Liste von Zielgruppen (Auds) und zugehörigen Bereichen enthält, für deren Verwendung die Anwendung registriert ist. Die Anwendung kann das Token dann verwenden, um Anfragen an andere Empfangsdienste zu stellen. AWS

Konsolenbasierte, vom Benutzer initiierte Authentifizierungsanfragen

Für diesen Ablauf bietet die AWS verwaltete Anwendung ein Konsolenerlebnis, das Benutzer initiieren.

In diesem Fall wird die AWS verwaltete Anwendung von der AWS Managementkonsole aus aufgerufen, nachdem sie eine Rolle übernommen hat. Damit die Anwendung ein Token erhält, muss der Benutzer einen Prozess initiieren, der die Anwendung zur Authentifizierung des Benutzers auslöst. Dadurch wird die Authentifizierung mithilfe von IAM Identity Center initiiert, wodurch der Benutzer zu der von Ihnen konfigurierten Identitätsquelle weitergeleitet wird.

Nachdem eine Anwendung ein Token erhalten hat

Nachdem eine anfordernde Anwendung ein Token von IAM Identity Center erhalten hat, aktualisiert die Anwendung das Token regelmäßig, sodass es für die gesamte Dauer der Benutzersitzung verwendet werden kann. Während dieser Zeit kann die Anwendung:

  • Rufen Sie weitere Informationen über das Token ab, um festzustellen, wer der Benutzer ist und welche Bereiche die Anwendung mit anderen AWS verwalteten Empfangsanwendungen verwenden kann.

  • Übergeben Sie das Token in Aufrufen an andere AWS verwaltete Empfangsanwendungen, die die Verwendung von Token unterstützen.

  • Besorgen Sie sich IAM-Rollensitzungen mit verbesserter Identität, die es verwenden kann, um Anfragen an andere AWS verwaltete Anwendungen zu stellen, die AWS Signature Version 4 verwenden.

    Eine IAM-Rollensitzung mit erweiterter Identität ist eine IAM-Rollensitzung, die die weitergegebene Identität des Benutzers enthält, die in einem vom IAM Identity Center erstellten Token gespeichert ist.

IAM-Rollensitzungen mit erweiterter Identität

Das AWS Security Token Service ermöglicht einer Anwendung, eine identitätserweiterte IAM-Rollensitzung abzurufen. AWS verwaltete Anwendungen, die den Benutzerkontext in einer Rollensitzung unterstützen, können die Identitätsinformationen verwenden, um den Zugriff auf der Grundlage des Benutzers zu autorisieren, der sich in der Rollensitzung befindet. Dieser neue Kontext ermöglicht es Anwendungen, Anfragen an AWS verwaltete Anwendungen zu stellen, die die Verbreitung vertrauenswürdiger Identitäten über AWS Signature Version 4-API-Anfragen unterstützen.

Wenn eine AWS verwaltete Anwendung eine identitätserweiterte IAM-Rollensitzung für den Zugriff auf eine Ressource verwendet, CloudTrail protokolliert sie die Identität des Benutzers (Benutzer-ID), die initiierende Sitzung und die ergriffene Aktion.

Wenn eine Anwendung mithilfe einer identitätsoptimierten IAM-Rollensitzung eine Anfrage an eine empfangende Anwendung stellt, fügt sie der Sitzung Kontext hinzu, sodass die empfangende Anwendung den Zugriff auf der Grundlage der Identität oder Gruppenmitgliedschaft des Benutzers oder der IAM-Rolle autorisieren kann. Beim Empfang von Anwendungen, die die Weitergabe vertrauenswürdiger Identitäten unterstützen, wird ein Fehler zurückgegeben, wenn die empfangende Anwendung oder die angeforderte Ressource nicht so konfiguriert ist, dass der Zugriff auf der Identität oder der Gruppenmitgliedschaft des Benutzers autorisiert wird.

Gehen Sie wie folgt vor, um dieses Problem zu vermeiden:

  • Stellen Sie sicher, dass die empfangende Anwendung mit IAM Identity Center verbunden ist.

  • Verwenden Sie die Konsole für die empfangende Anwendung oder die Anwendungs-APIs, um die Anwendung so einzurichten, dass der Zugriff auf Ressourcen auf der Grundlage der Identität oder der Gruppenmitgliedschaft des Benutzers autorisiert wird. Die diesbezüglichen Einrichtungsanforderungen variieren je nach Anwendung.

Weitere Informationen finden Sie in der Dokumentation der empfangenden AWS verwalteten Anwendung.

Arten von IAM-Rollensitzungen mit erweiterter Identität

Eine Anwendung ruft eine identitätserweiterte IAM-Rollensitzung ab, indem sie eine Anfrage an die AWS STS AssumeRole API sendet und im Parameter der Anfrage eine Kontext-Assertion übergibt. ProvidedContexts AssumeRole Die Kontext-Assertion wird aus dem idToken Anspruch abgerufen, der in der Antwort auf die Anfrage verfügbar ist. SSO OIDC CreateTokenWithIAM

AWS STS kann zwei verschiedene Typen von IAM-Rollensitzungen mit erweiterter Identität erstellen, je nachdem, welche Kontext-Assertion für die Anfrage bereitgestellt wurde: AssumeRole

  • Sitzungen, in denen nur die Identität des Benutzers protokolliert wird. CloudTrail

  • Sitzungen, die die Autorisierung auf der Grundlage der weitergegebenen Benutzeridentität ermöglichen und in denen diese protokolliert wird. CloudTrail

Um eine IAM-Rollensitzung mit erweiterter Identität zu erhalten AWS STS , die nur Auditinformationen bereitstellt, die in einem CloudTrail Trail registriert wurden, geben Sie den Wert des sts:audit_context Anspruchs in der Anfrage an. AssumeRole Um eine Sitzung zu erhalten, die es dem empfangenden AWS Dienst auch ermöglicht, den IAM Identity Center-Benutzer zur Ausführung einer Aktion zu autorisieren, geben Sie den Wert des Anspruchs für die Anfrage an. sts:identity_context AssumeRole Sie können nur einen Kontext angeben.

IAM-Rollensitzungen mit verbesserter Identität, erstellt mit sts:audit_context

Wenn mithilfe einer identitätsoptimierten IAM-Rollensitzung, die mit erstellt wurde, eine Anfrage an einen AWS Dienst gestellt wirdsts:audit_context, wird das IAM Identity Center userId des Benutzers in dem Element angemeldet. CloudTrail OnBehalfOf

"userIdentity": { "type": "AssumedRole", "principalId": "AROAEXAMPLE:MyRole", "arn": "arn:aws:sts::111111111111:assumed-role/MyRole/MySession", "accountId": "111111111111", "accessKeyId": "ASIAEXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "AROAEXAMPLE", "arn": "arn:aws:iam::111111111111:role/MyRole", "accountId": "111111111111", "userName": "MyRole" }, "attributes": { "creationDate": "2023-12-12T13:55:22Z", "mfaAuthenticated": "false" } }, "onBehalfOf": { "userId": "11111111-1111-1111-1111-1111111111", "identityStoreArn": "arn:aws:identitystore::111111111111:identitystore/d-111111111" } }
Anmerkung

Diese Sitzungen können nicht zur Autorisierung des Identity Center-Benutzers verwendet werden. Sie können weiterhin zur Autorisierung der IAM-Rolle verwendet werden.

Um diese Art von Rollensitzung abzurufen AWS STS, geben Sie den Wert des sts:audit_context Felds für die AssumeRole Anforderung im Anforderungsparameter ProvidedContextsan. Verwenden Sie ihn arn:aws:iam::aws:contextProvider/IdentityStore als Wert fürProviderArn.

IAM-Rollensitzungen mit verbesserter Identität, erstellt mit sts:identity_context

Wenn ein Benutzer mithilfe einer identitätsoptimierten IAM-Rollensitzung, die mit erstellt wurde, eine Anfrage an einen AWS Dienst stelltsts:identity_context, wird das IAM Identity Center userId des Benutzers CloudTrail in dem onBehalfOf Element genauso angemeldet wie eine Sitzung, die mit erstellt wurde. sts:audit_context

Dieser Sitzungstyp protokolliert nicht nur die Daten von IAM Identity Center-Benutzern CloudTrail, sondern wird auch von unterstützten APIs verwendet, userId um Aktionen auf der Grundlage der weitergegebenen Benutzeridentität zu autorisieren. Eine Liste der IAM-Aktionen für die unterstützten APIs finden Sie in der verwalteten Richtlinie. AWSIAMIdentityCenterAllowListForIdentityContext AWS Diese AWS verwaltete Richtlinie wird als Sitzungsrichtlinie bereitgestellt, wenn eine identitätserweiterte IAM-Rollensitzung mit erstellt wird. sts:identity_context Die Richtlinie verhindert, dass Sie die Rollensitzung mit nicht unterstützten Diensten verwenden. AWS

Um diese Art von Rollensitzung abzurufen AWS STS, geben Sie den Wert des sts:identity_context Felds für die AssumeRole Anforderung im Anforderungsparameter ProvidedContexts an. Verwenden Sie ihn arn:aws:iam::aws:contextProvider/IdentityStore als Wert fürProviderArn.

Einrichtungsprozess und Anforderungsablauf für AWS verwaltete Anwendungen

In diesem Abschnitt werden der Einrichtungsprozess und der Anforderungsablauf für AWS verwaltete Anwendungen beschrieben, die Trusted Identity Propagation verwenden und ein webbasiertes Single Sign-On-Erlebnis bieten.

Das folgende Diagramm bietet einen Überblick über diesen Prozess.

Richten Sie Prozess- und Anforderungsabläufe für AWS verwaltete Anwendungen ein, die vertrauenswürdige Identitätsverbreitung verwenden

Die folgenden Schritte bieten zusätzliche Informationen zu diesem Prozess.

  1. Verwenden Sie die Konsole für die AWS verwaltete Anwendung oder die Anwendungs-APIs, um Folgendes zu tun:

    1. Connect die Anwendung mit Ihrer Instanz von IAM Identity Center.

    2. Richten Sie Berechtigungen ein, um zu autorisieren, auf welche Anwendungsressourcen ein Benutzer zugreifen kann.

  2. Der Anforderungsablauf beginnt, wenn ein Benutzer eine AWS verwaltete Anwendung öffnet, die Zugriff auf Ressourcen anfordern kann (eine anfordernde Anwendung).

  3. Um ein Token für den Zugriff auf die empfangende AWS verwaltete Anwendung zu erhalten, initiiert die anfordernde AWS verwaltete Anwendung eine Anmeldeanforderung beim IAM Identity Center.

    Wenn der Benutzer nicht angemeldet ist, löst IAM Identity Center eine Benutzerauthentifizierung an die von Ihnen angegebene Identitätsquelle aus. Dadurch wird eine neue AWS Access-Portal-Sitzung für den Benutzer mit der Dauer erstellt, die Sie in IAM Identity Center konfiguriert haben. IAM Identity Center generiert dann ein Token, das der Sitzung zugeordnet ist, und die Anwendung kann für die verbleibende Dauer der AWS Zugriffsportalsitzung des Benutzers ausgeführt werden. Wenn sich der Benutzer von seiner Anwendung abmeldet oder wenn Sie seine Sitzung löschen, endet die Sitzung automatisch innerhalb von zwei Stunden.

  4. Die AWS verwaltete Anwendung initiiert eine Anfrage an die empfangende Anwendung und stellt ihr Token bereit.

  5. Die empfangende Anwendung ruft das IAM Identity Center auf, um die Identität des Benutzers und die im Token codierten Bereiche abzurufen. Die empfangende Anwendung kann auch Anfragen zum Abrufen von Benutzerattributen oder Gruppenmitgliedschaften des Benutzers aus dem Identity Center-Verzeichnis stellen.

  6. Die empfangende Anwendung verwendet ihre Autorisierungskonfiguration, um festzustellen, ob der Benutzer berechtigt ist, auf die angeforderte Anwendungsressource zuzugreifen.

  7. Wenn der Benutzer berechtigt ist, auf die angeforderte Anwendungsressource zuzugreifen, beantwortet die empfangende Anwendung die Anfrage.

  8. Die Identität des Benutzers, die in seinem Namen ausgeführten Aktionen und andere Ereignisse, die in den Protokollen und AWS CloudTrail Ereignissen der empfangenden Anwendung aufgezeichnet wurden. Die spezifische Art und Weise, wie diese Informationen protokolliert werden, ist je nach Anwendung unterschiedlich.