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.
Verwenden des TIP-Plugins für den Zugriff AWS-Services
Trusted Identity Propagation (TIP) ist eine Funktion AWS IAM Identity Center , die es Administratoren ermöglicht, Berechtigungen auf der Grundlage von Benutzerattributen wie Gruppenzuordnungen AWS-Services zu gewähren. Bei Trusted Identity Propagation wird einer IAM-Rolle ein Identitätskontext hinzugefügt, um den Benutzer zu identifizieren, der Zugriff auf AWS Ressourcen anfordert. Dieser Kontext wird an andere weitergegeben. AWS-Services
Der Identitätskontext umfasst Informationen, AWS-Services anhand derer Autorisierungsentscheidungen getroffen werden, wenn sie Zugriffsanfragen erhalten. Zu diesen Informationen gehören Metadaten, mit denen der Anforderer (z. B. ein IAM Identity Center-Benutzer), der AWS-Service Zugriff angefordert wird (z. B. Amazon Redshift) und der Zugriffsumfang (z. B. schreibgeschützter Zugriff) identifiziert werden. Der Empfänger AWS-Service verwendet diesen Kontext und alle dem Benutzer zugewiesenen Berechtigungen, um den Zugriff auf seine Ressourcen zu autorisieren. Weitere Informationen finden Sie in der Übersicht über die Verbreitung vertrauenswürdiger Identitäten im AWS IAM Identity Center Benutzerhandbuch.
Das TIP-Plugin kann zusammen mit AWS-Services diesem Plugin verwendet werden, das die Verbreitung vertrauenswürdiger Identitäten unterstützt. Einen Referenzanwendungsfall finden Sie unter Konfiguration einer Amazon Q Business-Anwendung mithilfe von Amazon Q AWS IAM Identity Center im Amazon Q Business-Benutzerhandbuch.
Anmerkung
Wenn Sie Amazon Q Business verwenden, finden Sie unter Konfiguration einer Amazon Q Business-Anwendung mithilfe AWS IAM Identity Center von servicespezifischen Anweisungen.
Voraussetzungen für die Verwendung des TIP-Plug-ins
Die folgenden Ressourcen sind erforderlich, damit das Plugin funktioniert:
-
Sie müssen entweder das AWS SDK für Java oder das verwenden AWS SDK für JavaScript.
-
Stellen Sie sicher, dass der Dienst, den Sie verwenden, die Verbreitung vertrauenswürdiger Identitäten unterstützt.
Weitere Informationen finden Sie in der Spalte Aktiviert die Verbreitung vertrauenswürdiger Identitäten über IAM Identity Center in der Tabelle AWS verwaltete Anwendungen, die in IAM Identity Center integriert sind, im AWS IAM Identity Center Benutzerhandbuch.
-
Aktivieren Sie IAM Identity Center und die Verbreitung vertrauenswürdiger Identitäten.
Weitere Informationen zu den Voraussetzungen und Überlegungen zu TIP finden Sie im AWS IAM Identity Center Benutzerhandbuch.
-
Sie müssen über eine Identity-Center-integrated Bewerbung verfügen.
Weitere Informationen finden Sie AWS im AWS IAM Identity Center Benutzerhandbuch unter Verwaltete Anwendungen oder Vom Kunden verwaltete Anwendungen.
-
Sie müssen einen vertrauenswürdigen Token-Aussteller (TTI) einrichten und Ihren Service mit dem IAM Identity Center verbinden.
Weitere Informationen finden Sie im Benutzerhandbuch unter Voraussetzungen für vertrauenswürdige Token-Aussteller und Aufgaben für die Einrichtung eines vertrauenswürdigen Token-Ausstellers.AWS IAM Identity Center
Um das TIP-Plugin in Ihrem Code zu verwenden
-
Erstellen Sie eine Instanz des Plugins zur Verbreitung vertrauenswürdiger Identitäten.
-
Erstellen Sie eine Service-Client-Instanz für die Interaktion mit Ihrem AWS-Service und passen Sie den Service-Client an, indem Sie das Trusted Identity Propagation-Plugin hinzufügen.
Das TIP-Plugin verwendet die folgenden Eingabeparameter:
-
webTokenProvider: Eine Funktion, die der Kunde implementiert, um ein OpenID-Token von seinem externen Identitätsanbieter zu erhalten. -
accessRoleArn: Der ARN der IAM-Rolle, den das Plugin mit dem Identitätskontext des Benutzers annehmen soll, um die identitätserweiterten Anmeldeinformationen abzurufen. -
applicationArn: Die eindeutige Kennungszeichenfolge für den Client oder die Anwendung. Dieser Wert ist ein Anwendungs-ARN, für den OAuth Grants konfiguriert sind. -
ssoOidcClient: (Optional) Ein SSO-OIDC-Client, z. B.SsoOidcClientfür Java oder client-sso-oidcfür JavaScript, mit kundenspezifischen Konfigurationen. Falls nicht angegeben, wird ein OIDC-Client, der verwendet, instanziiert und verwendetapplicationRoleArn. -
stsClient: (Optional) Ein AWS STS Client mit kundenspezifischen Konfigurationen, der verwendet wird, um den Identitätskontext desaccessRoleArnBenutzers anzunehmen. Falls nicht angegeben,applicationRoleArnwird ein AWS STS verwendender Client instanziiert und verwendet. -
applicationRoleArn: (Optional) Der ARN der IAM-Rolle, mit dem angenommen werden soll,AssumeRoleWithWebIdentitydamit der OIDC und die AWS STS Clients gebootet werden können.-
Wenn nicht angegeben, müssen sowohl der als auch der
ssoOidcClientParameter angegeben werden.stsClient -
Falls angegeben,
applicationRoleArnkann es nicht derselbe Wert wie deraccessRoleArnParameter sein.applicationRoleArnwird verwendet, um den STSClient zu erstellen, der verwendet wird, um AccessRole zu übernehmen. Wenn dieselbe Rolle für beideapplicationRoleund verwendet wird, würde das bedeutenaccessRole, eine Rolle zu verwenden, um sich selbst anzunehmen (Übernahme der eigenen Rolle), wovon jedoch abgeraten wird. AWS Weitere Einzelheiten finden Sie in der Ankündigung.
-
Überlegungen zu ssoOidcClientstsClient, und applicationRoleArn Parametern
Beachten Sie bei der Konfiguration des TIP-Plug-ins die folgenden Berechtigungsanforderungen, je nachdem, welche Parameter Sie angeben:
-
Wenn Sie angeben
ssoOidcClientundstsClient:-
Die Anmeldeinformationen auf der
ssoOidcClientsolltenoauth:CreateTokenWithIAMberechtigt sein, Identity Center anzurufen, um den Identity Center-spezifischen Benutzerkontext abzurufen. -
Die Anmeldeinformationen
stsClientsollten aktiviert sein undsts:AssumeRolediests:SetContextBerechtigungen müssen aktiviert seinaccessRole.accessRolemuss außerdem mit einer Vertrauensstellung konfiguriert werden, bei der die Anmeldeinformationen aktiviert sindstsClient.
-
-
Wenn Sie Folgendes bereitstellen
applicationRoleArn:-
applicationRolesollte über dieoauth:CreateTokenWithIAMsts:SetContextBerechtigungensts:AssumeRoleund für die erforderlichen Ressourcen (IdC-InstanzaccessRole) verfügen, da sie zum Erstellen von OIDC- und STS-Clients verwendet wird. -
applicationRolesollte eine Vertrauensbeziehung mit dem Identitätsanbieter haben, der für die Generierung verwendet wirdwebToken, da dieser verwendetwebTokenwird, um die ApplicationRole über den AssumeRoleWithWebIdentityAufruf durch das Plugin zu übernehmen.
-
ApplicationRole Beispielkonfiguration:
Vertrauensrichtlinie mit Web-Token-Anbieter:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::ACCOUNT_ID:oidc-provider/IDENTITY_PROVIDER_URL" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "IDENTITY_PROVIDER_URL:aud": "CLIENT_ID_TO_BE_TRUSTED" } } } ] }
Genehmigungsrichtlinie:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "sts:AssumeRole", "sts:SetContext" ], "Resource": [ "accessRoleArn" ] }, { "Effect": "Allow", "Action": [ "sso-oauth:CreateTokenWithIAM" ], "Resource": [ "*" ] } ] }
Codebeispiele mit TIP
Die folgenden Beispiele zeigen, wie Sie das TIP-Plugin mit dem AWS SDK für Java oder dem in Ihrem Code implementieren AWS SDK für JavaScript.