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.
Konfiguration der IAM Identity Center-Authentifizierung mit dem AWS CLI
Dieses Thema enthält Anweisungen zur Konfiguration von AWS CLI with AWS IAM Identity Center (IAM Identity Center) zum Abrufen von Anmeldeinformationen für die Ausführung von Befehlen. AWS CLI Es gibt hauptsächlich zwei Möglichkeiten, Benutzer mit IAM Identity Center zu authentifizieren, um Anmeldeinformationen für die Ausführung von AWS CLI Befehlen über die Datei zu erhalten: config
-
(Empfohlen) Konfiguration des SSO-Token-Anbieters.
-
Nicht aktualisierbare Legacy-Konfiguration.
Informationen zur Verwendung der Bearer-Authentifizierung, die keine Konto-ID und Rolle verwendet, finden Sie unter Einrichtung zur Verwendung von AWS CLI with CodeCatalyst im CodeCatalyst Amazon-Benutzerhandbuch.
Anmerkung
Eine Anleitung zur Verwendung von IAM Identity Center mit AWS CLI Befehlen finden Sie unter. Tutorial: Verwenden von IAM Identity Center zur Ausführung von Amazon S3 S3-Befehlen in AWS CLI
Topics
Voraussetzungen
-
Installieren Sie die AWS CLI. Weitere Informationen finden Sie unter Installation oder Aktualisierung der neuesten Version von AWS CLI..
-
Sie benötigen zunächst Zugriff auf die SSO-Authentifizierung in IAM Identity Center. Wählen Sie eine der folgenden Methoden, um auf Ihre AWS Anmeldeinformationen zuzugreifen.
Folgen Sie den Anweisungen unter Erste Schritte im AWS IAM Identity Center -Benutzerhandbuch. Dieser Prozess aktiviert IAM Identity Center, erstellt einen Administratorbenutzer und fügt einen entsprechenden Berechtigungssatz mit der geringsten Berechtigung hinzu.
Anmerkung
Erstellen Sie einen Berechtigungssatz, der Berechtigungen mit der geringsten Berechtigung anwendet. Wir empfehlen, den vordefinierten PowerUserAccess-Berechtigungssatz zu verwenden, es sei denn, Ihr Arbeitgeber hat zu diesem Zweck einen benutzerdefinierten Berechtigungssatz erstellt.
Verlassen Sie das Portal und melden Sie sich erneut an AWS-Konten, um Ihre programmatischen Zugangsdaten und Optionen für Administrator oder PowerUserAccess zu sehen. Wählen Sie PowerUserAccess aus, wenn Sie mit dem SDK arbeiten.
Melden Sie sich AWS über das Portal Ihres Identitätsanbieters an. Wenn Ihr Cloud-Administrator Ihnen PowerUserAccess (Entwickler-) Berechtigungen erteilt hat, sehen Sie, auf AWS-Konten welche Sie Zugriff haben, und Ihren Berechtigungssatz. Neben dem Namen Ihres Berechtigungssatzes sehen Sie Optionen für den manuellen oder programmgesteuerten Zugriff auf die Konten mithilfe dieses Berechtigungssatzes.
Benutzerdefinierte Implementierungen können zu unterschiedlichen Erfahrungen führen, z. B. zu unterschiedlichen Namen von Berechtigungssätzen. Wenn Sie sich nicht sicher sind, welchen Berechtigungssatz Sie verwenden sollen, wenden Sie sich an Ihr IT-Team.
Melden Sie sich AWS über Ihr AWS Zugangsportal an. Wenn Ihr Cloud-Administrator Ihnen PowerUserAccess (Entwickler-) Berechtigungen erteilt hat, sehen Sie, auf AWS-Konten welche Sie Zugriff haben, und Ihren Berechtigungssatz. Neben dem Namen Ihres Berechtigungssatzes sehen Sie Optionen für den manuellen oder programmgesteuerten Zugriff auf die Konten mithilfe dieses Berechtigungssatzes.
Wenden Sie sich an Ihr IT-Team, um Hilfe zu erhalten.
Nachdem Sie Zugriff auf IAM Identity Center erhalten haben, erfassen Sie Ihre Informationen für IAM Identity Center, indem Sie wie folgt vorgehen:
-
Sammeln Sie Ihre
SSO Region- undSSO Start URL-Werte, die Sie für die Ausführung vonaws configure ssobenötigen.-
Wählen Sie in Ihrem AWS Zugriffsportal den Berechtigungssatz aus, den Sie für die Entwicklung verwenden, und klicken Sie auf den Link Zugriffstasten.
-
Wählen Sie im Dialogfeld Anmeldeinformationen abrufen die Registerkarte aus, die Ihrem Betriebssystem entspricht.
-
Wählen Sie die Methode Anmeldeinformationen für IAM Identity Center aus, um die Werte für
SSO Start URLundSSO Regionabzurufen.
-
-
Alternativ können Sie ab Version 2.22.0 die Aussteller-URL anstelle der Start-URL verwenden. Die Aussteller-URL befindet sich in der AWS IAM Identity Center Konsole an einem der folgenden Orte:
-
Auf der Dashboard-Seite finden Sie die Aussteller-URL in der Einstellungsübersicht.
-
Auf der Seite Einstellungen finden Sie die Aussteller-URL in den Einstellungen für die Identitätsquelle.
-
-
Informationen dazu, welcher Bereichswert registriert werden muss, finden Sie unter OAuth 2.0 Access Scopes im IAM Identity Center-Benutzerhandbuch.
Konfigurieren Ihres Profils mit dem aws
configure sso-Assistenten
So konfigurieren Sie ein Profil für IAM Identity Center für Ihre AWS CLI:
-
Führen Sie den Befehl
aws configure ssoin Ihrem bevorzugten Terminal aus. -
Die AWS CLI Versuche, Ihren Standardbrowser für den Anmeldevorgang Ihres IAM Identity Center-Kontos zu öffnen. Bei diesem Vorgang werden Sie möglicherweise aufgefordert, den AWS CLI Zugriff auf Ihre Daten zuzulassen. Da AWS CLI das auf dem SDK für Python aufbaut, können Berechtigungsnachrichten Variationen des
botocoreNamens enthalten.Wenn der Browser AWS CLI nicht geöffnet werden kann, werden je nach Art der von Ihnen verwendeten Autorisierung Anweisungen zum manuellen Starten des Anmeldevorgangs angezeigt.
-
Wählen Sie das zu verwendende AWS Konto aus der angezeigten Liste aus. Wenn Sie berechtigt sind, nur ein Konto zu verwenden, wählt das AWS CLI automatisch dieses Konto aus und überspringt die Eingabeaufforderung.
There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (123456789011) ProductionAccount, production-account-admin@example.com (123456789022) -
Wählen Sie die zu verwendende IAM-Rolle aus der angezeigten Liste aus. Wenn nur eine Rolle verfügbar ist, wählt der AWS CLI automatisch diese Rolle aus und überspringt die Eingabeaufforderung.
Using the account ID123456789011There are 2 roles available to you. > ReadOnly FullAccess -
Geben Sie das Standardausgabeformat, die Standard- AWS-Region für das Senden von Befehlen und einen Namen für das Profil an. Wenn Sie
defaultals Profilnamen angeben, wird dieses Profil als Standardprofil verwendet. Im folgenden Beispiel gibt der Benutzer eine Standardregion, ein Standardausgabeformat und den Namen des Profils ein.Default client Region [None]:us-west-2<ENTER>CLI default output format (json if not specified) [None]:json<ENTER>Profile name [123456789011_ReadOnly]:my-dev-profile<ENTER> -
Eine abschließende Meldung beschreibt die abgeschlossene Profilkonfiguration. Sie können dieses Profil nun verwenden, um Anmeldeinformationen anzufordern. Verwenden Sie den
aws sso login-Befehl, um die Anmeldeinformationen, die zum Ausführen von Befehlen erforderlich sind, anzufordern und abzurufen. Detaillierte Anweisungen finden Sie unter Anmelden für eine Sitzung in IAM Identity Center.
Diese Schritte führen dazu, dass der sso-session-Abschnitt und das benannte Profil in der config-Datei erstellt werden, die wie folgt aussieht:
Ausschließliches Konfigurieren des sso-session-Abschnitts mit dem aws configure sso-session-Assistenten
Anmerkung
Diese Konfiguration ist nicht mit dem älteren IAM Identity Center kompatibel.
Der aws configure sso-session-Befehl aktualisiert nur die sso-session-Abschnitte in der ~/.aws/config-Datei. Führen Sie den aws configure sso-session Befehl aus und geben Sie Ihre IAM Identity Center-Start-URL oder Aussteller-URL sowie die AWS Region an, in der das IAM Identity Center-Verzeichnis gehostet wird.
$ aws configure sso-session
SSO session name: my-sso
SSO start URL [None]: https://my-sso-portal.awsapps.com/start
SSO region [None]: us-east-1
SSO registration scopes [None]: sso:account:access
Verwenden Sie für Dual-Stack-Unterstützung die Dual-Stack-SSO-Start-URL:
$ aws configure sso-session
SSO session name: my-sso
SSO start URL [None]: https://ssoins-1234567890abcdef.portal.us-east-1.app.aws
SSO region [None]: us-east-1
SSO registration scopes [None]: sso:account:access
Manuelle Konfiguration mithilfe der config-Datei
Die Konfigurationsinformationen für IAM Identity Center werden in der config-Datei gespeichert und können mit einem Texteditor bearbeitet werden. Um einem benannten Profil manuell Unterstützung für IAM Identity Center hinzuzufügen, müssen Sie der config-Datei Schlüssel und Werte hinzufügen.
Der sso-session Abschnitt der config Datei wird verwendet, um Konfigurationsvariablen für den Erwerb von SSO-Zugriffstoken zu gruppieren, die dann zum Abrufen von Anmeldeinformationen verwendet werden können. AWS Die folgenden Einstellungen werden verwendet:
-
(Erforderlich)
sso_start_url -
(Erforderlich)
sso_region
Sie definieren einen sso-session-Abschnitt und ordnen ihn einem Profil zu. Die Einstellungen sso_region und sso_start_url müssen innerhalb des sso-session-Abschnitts festgelegt werden. Normalerweise müssen sso_account_id und sso_role_name im profile-Abschnitt festgelegt werden, damit das SDK SSO-Anmeldeinformationen anfordern kann.
Im folgenden Beispiel wird das SDK für die Anforderung von SSO-Anmeldeinformationen konfiguriert und es wird eine automatische Token-Aktualisierung unterstützt:
[profiledev] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://my-sso-portal.awsapps.com/start
Verwenden Sie für Dual-Stack-Unterstützung das Dual-Stack-SSO-Start-URL-Format:
[profiledev] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://ssoins-1234567890abcdef.portal.us-east-1.app.aws
Dadurch können sso-session-Konfigurationen zudem auch in mehreren Profilen wiederverwendet werden:
[profiledev] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole[profileprod] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole2[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://my-sso-portal.awsapps.com/start
Verwenden Sie für Dual-Stack-Unterstützung das Dual-Stack-SSO-Start-URL-Format:
[profiledev] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole[profileprod] sso_session =my-ssosso_account_id =111122223333sso_role_name =SampleRole2[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://ssoins-1234567890abcdef.portal.us-east-1.app.aws
sso_account_id und sso_role_name sind jedoch nicht für alle Szenarien der SSO-Token-Konfiguration erforderlich. Wenn Ihre Anwendung nur AWS Dienste verwendet, die die Trägerauthentifizierung unterstützen, sind herkömmliche AWS
Anmeldeinformationen nicht erforderlich. Bei der Bearer-Authentifizierung handelt es sich um ein HTTP-Authentifizierungsschema, das Sicherheitstoken, sogenannte Bearer-Token, verwendet. In diesem Szenario sind sso_account_id und sso_role_name nicht erforderlich. Lesen Sie im individuellen Leitfaden für Ihren AWS Dienst nach, ob er die Bearer-Token-Autorisierung unterstützt.
Darüber hinaus können Registrierungsbereiche als Teil von sso-session konfiguriert werden. Scope ist ein Mechanismus in OAuth 2.0, mit dem der Zugriff einer Anwendung auf das Konto eines Benutzers beschränkt werden kann. Eine Anwendung kann einen oder mehrere Bereiche anfordern und das an die Anwendung ausgegebene Zugriffstoken ist auf die gewährten Bereiche beschränkt. Diese Bereiche definieren die Berechtigungen, die für die Autorisierung für den registrierten OIDC-Client angefordert werden, und die vom Client abgerufenen Zugriffstoken. Im folgenden Beispiel wird sso_registration_scopes so festgelegt, dass der Zugriff zum Auflisten von Konten/Rollen möglich ist:
[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://my-sso-portal.awsapps.com/startsso_registration_scopes =sso:account:access
Für Dual-Stack-Unterstützung:
[sso-sessionmy-sso] sso_region =us-east-1sso_start_url =https://ssoins-1234567890abcdef.portal.us-east-1.app.awssso_registration_scopes =sso:account:access
Das Authentifizierungs-Token wird auf der Festplatte unter dem Verzeichnis sso/cache mit einem Dateinamen zwischengespeichert, der auf dem Sitzungsnamen basiert.
Anmerkung
Die automatisierte Token-Aktualisierung wird bei Verwendung der nicht aktualisierbaren Legacy-Konfiguration nicht unterstützt. Wir empfehlen die Verwendung der SSO-Token-Konfiguration.
Um einem benannten Profil manuell Unterstützung für IAM Identity Center hinzuzufügen, müssen Sie der Profildefinition in der config-Datei die folgenden Schlüssel und Werte hinzufügen.
Sie können auch andere Schlüssel und Werte einschließen, die in der .aws/config-Datei gültig sind. Das folgende Beispiel ist ein Profil für IAM Identity Center:
[profilemy-sso-profile] sso_start_url =https://my-sso-portal.awsapps.com/startsso_region =us-west-2sso_account_id =111122223333sso_role_name =SSOReadOnlyRoleregion =us-west-2output =json
Für Dual-Stack-Unterstützung:
[profilemy-sso-profile] sso_start_url =https://ssoins-1234567890abcdef.portal.us-east-1.app.awssso_region =us-west-2sso_account_id =111122223333sso_role_name =SSOReadOnlyRoleregion =us-west-2output =json
Um Befehle ausführen zu können, müssen Sie zuerst Anmelden für eine Sitzung in IAM Identity Center verwenden, um Ihre temporären Anmeldeinformationen anzufordern und abzurufen.
Weitere Informationen zu den Dateien config und credentials finden Sie unter Einstellungen der Konfigurations- und Anmeldeinformationsdatei in der AWS CLI.
Anmelden für eine Sitzung in IAM Identity Center
Anmerkung
Beim Anmeldevorgang werden Sie möglicherweise aufgefordert, den AWS CLI Zugriff auf Ihre Daten zu gewähren. Da AWS CLI das auf dem SDK für Python aufbaut, können Berechtigungsnachrichten Variationen des botocore Namens enthalten.
Um eine Reihe von Anmeldeinformationen für IAM Identity Center abzurufen und zwischenzuspeichern, führen Sie den folgenden Befehl für die AWS CLI aus, um Ihren Standardbrowser zu öffnen und Ihre Anmeldung bei IAM Identity Center zu überprüfen.
$ aws sso login --profile my-dev-profile
SSO authorization page has automatically been opened in your default browser.
Follow the instructions in the browser to complete this authorization request.
Successfully logged into Start URL: https://my-sso-portal.awsapps.com/start
Ihre Anmeldeinformationen für die IAM Identity Center-Sitzung werden zwischengespeichert und dann AWS CLI verwendet, um AWS Anmeldeinformationen für die im Profil angegebene IAM-Rolle sicher abzurufen.
Wenn Ihr Browser AWS CLI nicht automatisch geöffnet werden kann, werden je nach Art der von Ihnen verwendeten Autorisierung Anweisungen zum manuellen Starten des Anmeldevorgangs angezeigt.
Mit dem Parameter --sso-session des aws sso login-Befehls können Sie auch angeben, welches sso-session-Profil bei der Anmeldung verwendet werden soll. Die Option sso-session ist für ältere Versionen von IAM Identity Center nicht verfügbar.
$aws sso login --sso-sessionmy-dev-session
Ab der Version 2.22.0 ist die PKCE-Autorisierung die Standardeinstellung. Um die Geräteautorisierung für die Anmeldung zu verwenden, fügen Sie die Option --use-device-code hinzu.
$ aws sso login --profile my-dev-profile --use-device-code
Das Authentifizierungstoken wird auf der Festplatte unter dem Verzeichnis ~/.aws/sso/cache mit einem Dateinamen zwischengespeichert, der auf der sso_start_url basiert.
Ausführen eines Befehls mit Ihrem Profil für IAM Identity Center
Sobald Sie angemeldet sind, können Sie Ihre Anmeldeinformationen verwenden, um AWS CLI Befehle mit dem zugehörigen benannten Profil aufzurufen. Das folgende Beispiel zeigt einen Befehl mit Verwendung eines Profils:
$aws sts get-caller-identity --profilemy-dev-profile
Solange Sie bei IAM Identity Center angemeldet sind und die zwischengespeicherten Anmeldeinformationen nicht abgelaufen sind, werden abgelaufene Anmeldeinformationen bei AWS CLI Bedarf automatisch erneuert. AWS Wenn Ihre IAM–Identity-Center-Anmeldeinformationen jedoch ablaufen, müssen Sie sie explizit erneuern, indem Sie sich erneut bei Ihrem IAM–Identity-Center-Konto anmelden.
Abmelden von Ihren Sitzungen im IAM Identity Center
Wenn Sie Ihr Profil für IAM Identity Center nicht mehr verwenden, können Sie Ihre Anmeldeinformationen ablaufen lassen oder den folgenden Befehl ausführen, um Ihre zwischengespeicherten Anmeldeinformationen zu löschen.
$aws sso logoutSuccessfully signed out of all SSO profiles.
Fehlerbehebung
Wenn Sie bei der Verwendung von auf Probleme stoßen AWS CLI, finden Sie unter Schritte Behebung von Fehlern für den AWS CLI zur Fehlerbehebung.
Zugehörige Ressourcen
Die folgenden zusätzlichen Ressourcen stehen zur Verfügung.
-
Tutorial: Verwenden von IAM Identity Center zur Ausführung von Amazon S3 S3-Befehlen in AWS CLI
-
Installation oder Aktualisierung der neuesten Version von AWS CLI.
-
Einstellungen der Konfigurations- und Anmeldeinformationsdatei in der AWS CLI
-
aws configure ssoin der Referenz zu AWS CLI Version 2 -
aws configure sso-sessionin der Referenz zu AWS CLI Version 2 -
aws sso loginin der Referenz zu AWS CLI Version 2 -
aws sso logoutin der Referenz zu AWS CLI Version 2 -
Einrichtung für die Verwendung von AWS CLI with CodeCatalyst im CodeCatalyst Amazon-Benutzerhandbuch
-
OAuth 2.0 Zugriffsbereiche im IAM Identity Center-Benutzerhandbuch
-
Tutorials für die ersten Schritte im Benutzerhandbuch zu IAM Identity Center