In diesem Dokument geht es nur um die Authentifizierung für die Google Cloud CLI für den Zugriff aufCloud de Confiance by S3NS -Ressourcen. Wenn Sie Workloads mit Cloud-Clientbibliotheken oder Google API-Clientbibliotheken authentifizieren müssen, lesen Sie den Abschnitt Standardanmeldedaten für Anwendungen.
Hinweis
Wenn Sie noch nicht mit Cloud de Confiance by S3NSvertraut sind, finden Sie unter Google Cloud CLI für Cloud de Confianceeinrichten eine Anleitung zum Einrichten Ihrer Umgebung und zum Anmelden, um die gcloud CLI zu autorisieren, in Ihrem Namen zu handeln.
Im Rest dieses Dokuments werden komplexere Szenarien behandelt, z. B. die Verwendung der gcloud CLI mit verschiedenen Prinzipaltypen, geeignete Authentifizierungsmethoden für verschiedene Umgebungen, das Wechseln von Prinzipalen und die Verwaltung gespeicherter Anmeldedaten.
Authentifizierungsmethoden
Für alle gcloud CLI-Befehle muss die Authentifizierung für Cloud de ConfianceAPIs erfolgen. Sie können sich auf folgende Arten authentifizieren:
Anmeldedaten autorisieren und speichern: Geeignet für die Verwendung durch Personen in einer lokalen Entwicklungsumgebung. Sie können die gcloud CLI mit dem Befehl
gcloud auth loginautorisieren, im Namen eines Principals zu agieren. Nach der ersten Authentifizierung werden mit diesem Befehl Anmeldedaten im Konfigurationsverzeichnis der gcloud CLI gespeichert. Die gcloud CLI verwendet diese gespeicherten Anmeldedaten zur automatischen Authentifizierung für nachfolgende Befehle, bis Ihre Sitzung abläuft oder Sie die Autorisierung widerrufen.Mit einer Anmeldedatendatei authentifizieren: Geeignet für Arbeitslasten, die außerhalb von Cloud de Confiance by S3NSausgeführt werden. Sie können Umgebungsvariablen oder gcloud CLI-Konfigurationseigenschaften verwenden, um eine Datei mit Anmeldedaten für die automatische Authentifizierung anzugeben. Diese Datei kann eine der folgenden sein:
Eine Konfigurationsdatei für Anmeldedaten für die Workload Identity-Föderation.
Einen Dienstkontoschlüssel.
Zugriffstoken bereitstellen: Geeignet für hochgradig isolierte automatisierte Workflows oder zustandslose Sitzungen auf gemeinsam genutzten Computern. Sie können den Anmeldedatenspeicher umgehen, indem Sie der gcloud CLI direkt ein Zugriffstoken bereitstellen. Dazu können Sie eine bestimmte Umgebungsvariable auf den Rohstring des Zugriffstokens festlegen oder die gcloud CLI auf eine Datei verweisen, die das Zugriffstoken enthält.
Nach der Authentifizierung können Sie die gcloud CLI optional die Identität eines Dienstkontos übernehmen lassen, indem Sie die E-Mail-Adresse des Dienstkontos angeben.
Sie können mehrere Authentifizierungsmethoden in einer einzelnen Umgebung verwenden. Für einen bestimmten gcloud-Befehl wird jedoch nur ein Prinzipal verwendet. Um zu ermitteln, welcher Prinzipal verwendet werden soll, folgt die gcloud CLI einer Prioritätsreihenfolge.
Wann keine Authentifizierung erforderlich ist
In den folgenden Situationen müssen Sie sich nicht für die gcloud CLI authentifizieren:
- Bei Verwendung der gcloud CLI über eine Ressource, die einen Compute Engine- Metadatenserver bereitstellt. Dazu gehören Ressourcen wie Compute Engine-VM-Instanzen, Cloud Run-Dienste und Cloud Build-Builds. Die gcloud CLI authentifiziert sich mit dem Dienstkonto, das an die VM angehängt ist, und ist autorisiert, auf dieselben Ressourcen wie dieses Dienstkonto zuzugreifen, sofern keine Zugriffsbereiche angewendet wurden.
Das richtige Hauptkonto für die Aufgabe auswählen
Es gibt verschiedene Arten von Identitäten für die Nutzung durch Menschen und für automatisierte Arbeitslasten. Der Hauptkontotyp, den Sie verwenden müssen, wirkt sich darauf aus, wie Sie sich authentifizieren.
-
Dienstkonten: Dies sind Konten, die speziell für Cloud de Confiance by S3NS sind und von Arbeitslasten verwendet werden können, um auf Dienste oder Ressourcen zuzugreifen. Normalerweise authentifizieren Sie sich nicht direkt als Dienstkonto. Stattdessen hängen Sie ein Dienstkonto an eine Ressource wie eine Compute Engine-VM an oder verwenden die Identitätsübernahme des Dienstkontos.
-
Föderierte Hauptkonten: Das sind Identitäten, die auf Nutzer- oder Dienstkonten bei einem externen Identitätsanbieter verweisen. Es gibt zwei Arten von föderierten Hauptkonten, die von Cloud de Confiance by S3NSunterstützt werden und ähnliche Namen haben:
-
Mitarbeiteridentitätsföderation: Ermöglicht es menschlichen Nutzern, sich mit Identitäten, die von einem externen Identitätsanbieter verwaltet werden, bei Cloud de Confiance by S3NS anzumelden. Wenn in Ihrer Organisation bereits die Einmalanmeldung (SSO) eingerichtet ist, können Sie diesen Identitätstyp möglicherweise zur Authentifizierung bei Cloud de Confiance by S3NSverwenden.
Ihr Identitätsanbieter muss OpenID Connect (OIDC) oder SAML 2.0 unterstützen, damit Sie die Mitarbeiteridentitätsföderation verwenden können.
-
Identitätsföderation von Arbeitslasten: Ermöglicht es Arbeitslasten, die außerhalb von Cloud de Confiance by S3NS ausgeführt werden, auf Cloud de Confiance by S3NS Ressourcen zuzugreifen.
Sie können die Workload Identity-Föderation mit Arbeitslasten verwenden, die sich mit X.509-Clientzertifikaten authentifizieren, die auf Amazon Web Services (AWS) oder Azure, Active Directory vor Ort, Bereitstellungsdiensten wie GitHub und GitLab und mit einem beliebigen Identitätsanbieter ausgeführt werden, der OpenID Connect (OIDC) oder Security Assertion Markup Language (SAML) V2.0 unterstützt.
-
gcloud CLI als Mensch verwenden
Sie können die gcloud CLI mit einer föderierten Nutzeridentität verwenden, die in einem externen Identitätsanbieter (IdP) verwaltet wird. Dazu verwenden Sie die Mitarbeiteridentitätsföderation.
Bei der folgenden Anleitung wird davon ausgegangen, dass Sie bereits einen Pool und einen Anbieter für die Mitarbeiteridentitätsföderation eingerichtet haben, die mit Ihrem IdP funktionieren.
Wenn Sie die gcloud CLI mit einer föderierten Nutzeridentität verwenden möchten, erstellen Sie eine Anmeldekonfigurationsdatei und melden sich dann über einen browserbasierten Ablauf an:
Führen Sie den folgenden Befehl aus, um eine Konfigurationsdatei für die Anmeldung zu erstellen:
Linux und macOS
gcloud iam workforce-pools create-login-config \ locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \ --output-file=LOGIN_CONFIG_PATH
Windows (PowerShell)
gcloud iam workforce-pools create-login-config ` locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID ` --output-file=LOGIN_CONFIG_PATH
Ersetzen Sie Folgendes:
WORKFORCE_POOL_ID: Die ID des Pools für die Mitarbeiteridentitätsföderation.WORKFORCE_PROVIDER_ID: Die ID des Anbieters der Mitarbeiteridentitätsföderation.-
LOGIN_CONFIG_PATH: Der Pfad, in den die Anmeldekonfigurationsdatei geschrieben werden soll. Beispiel:login-config.json.
Die Konfigurationsdatei für die Anmeldung enthält die Endpunkte, die von der gcloud CLI verwendet werden, um den browserbasierten Authentifizierungsvorgang zu aktivieren und die Zielgruppe auf den IdP festzulegen, der im Workforce Identity-Poolanbieter konfiguriert wurde. Die Datei enthält keine vertraulichen Informationen.
Der Inhalt der Anmeldekonfigurationsdatei sieht in etwa so aus:
{ "universe_domain": "s3nsapis.fr", "universe_cloud_web_domain": "cloud.s3nscloud.fr", "type": "external_account_authorized_user_login_config", "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID", "auth_url": "https://auth.cloud.s3nscloud.fr/authorize", "token_url": "https://sts.s3nsapis.fr/v1/oauthtoken", "token_info_url": "https://sts.s3nsapis.fr/v1/introspect" }
Verweisen Sie mit einer Umgebungsvariable oder einem Attribut in der aktiven gcloud CLI-Konfiguration auf die Konfigurationsdatei für die Anmeldung oder verwenden Sie sie direkt mit dem Befehl
gcloud auth login:Umgebungsvariable
So verwenden Sie die Konfigurationsdatei für die Anmeldung mit einer Umgebungsvariable:
-
Legen Sie die Umgebungsvariable
CLOUDSDK_AUTH_LOGIN_CONFIG_FILEauf den Pfad der Anmeldekonfigurationsdatei fest. -
Führen Sie dazu diesen Befehl aus:
gcloud auth login
- Die gcloud CLI verweist auf die Umgebungsvariable, um die Anmeldekonfigurationsdatei zu finden, und startet dann den Authentifizierungsprozess. Folgen Sie dem browserbasierten Ablauf, um die gcloud CLI zu authentifizieren und zu autorisieren, damit sie in Ihrem Namen auf Ressourcen für zukünftige Befehle zugreifen kann.
Wenn Sie die Konfigurationsdatei für die Anmeldung für
gcloud auth login-Befehle nicht mehr verwenden möchten, löschen Sie die UmgebungsvariableCLOUDSDK_AUTH_LOGIN_CONFIG_FILE.gcloud CLI-Konfiguration
So verwenden Sie die Konfigurationsdatei für die Anmeldung mit einer Konfigurationseigenschaft der gcloud CLI:
-
Legen Sie das Attribut
auth/login_config_fileder aktiven gcloud CLI-Konfiguration mit dem folgenden Befehl auf den Pfad der Anmeldekonfigurationsdatei fest:gcloud config set auth/login_config_file LOGIN_CONFIG_PATH
-
Führen Sie dazu diesen Befehl aus:
gcloud auth login
- Die gcloud CLI verweist auf das Konfigurationsattribut, um die Anmeldekonfigurationsdatei zu finden, und startet dann den Authentifizierungsprozess. Folgen Sie dem browserbasierten Ablauf, um die gcloud CLI zu authentifizieren und zu autorisieren, damit sie in Ihrem Namen auf Ressourcen für zukünftige Befehle zugreifen kann.
Wenn Sie die Konfigurationsdatei für die Anmeldung nicht mehr für
gcloud auth login-Befehle verwenden möchten, heben Sie die Einstellung der Property mit dem folgenden Befehl auf:gcloud config unset auth/login_config_file
gcloud auth login
Wenn Sie die Konfigurationsdatei für die Anmeldung direkt mit dem Befehl
gcloud auth loginverwenden möchten, folgen Sie dieser Anleitung:-
Wenn Sie das Flag
--activatebeim Erstellen der Konfigurationsdatei für die Anmeldung verwendet haben, führen Sie den folgenden Befehl aus:gcloud auth login
-
Wenn Sie das Flag
--activatebeim Erstellen der Konfigurationsdatei für die Anmeldung nicht verwendet haben, führen Sie den folgenden Befehl aus:Linux und macOS
gcloud auth login \ --login-config=LOGIN_CONFIG_PATH
Windows (PowerShell)
gcloud auth login ` --login-config=LOGIN_CONFIG_PATH
Ersetzen Sie LOGIN_CONFIG_PATH durch den Pfad Ihrer Anmeldekonfigurationsdatei.
Mit dem Befehl gcloud auth login werden Anmeldedaten für den Zugriff in Ihrem Basisverzeichnis gespeichert. Der authentifizierte Prinzipal wird zum aktiven Prinzipal in Ihrer aktiven gcloud CLI-Konfiguration. Sofern nicht anders angegeben, verwendet die gcloud CLI diese gespeicherten Anmeldedaten für den Zugriff auf Cloud de Confiance by S3NS.
-
Legen Sie die Umgebungsvariable
gcloud CLI mit Arbeitslasten verwenden
Bei automatisierten Arbeitslasten authentifizieren Sie sich in der Regel mit einer der folgenden Methoden:
Eine föderierte Arbeitslastidentität mit der Workload Identity-Föderation
Ein Dienstkonto mit Identitätsübernahme
Föderierte Arbeitslastidentitäten
Sie können die gcloud CLI mit einer föderierten Workload Identity verwenden. Dazu nutzen Sie die Workload Identity-Föderation.
Eine Arbeitslast kann entweder direkt auf Cloud de Confiance by S3NS Ressourcen zugreifen, indem sie als Hauptkonto fungiert, das durch einen Workload Identity-Pool definiert wird, oder die Identität eines Dienstkontos übernehmen, das an einen Workload Identity-Pool angehängt ist.
Wir empfehlen, die Methode für direkten Zugriff zu verwenden, um Dienstkonten mit zu vielen Berechtigungen zu vermeiden und den Ressourcenzugriff mit der Kennung des föderierten Hauptkontos zu protokollieren. Verwenden Sie die Identitätsübernahme des Dienstkontos nur, wenn Cloud de Confiance by S3NS -APIs die Workload Identity-Föderation nicht unterstützen.
Bei der folgenden Anleitung wird davon ausgegangen, dass Sie bereits einen Workload Identity-Föderationspool und ‑Anbieter für die Zusammenarbeit mit Ihrem IdP eingerichtet haben.
Erstellen Sie eine Konfigurationsdatei für Anmeldedaten für die Workload Identity-Föderation, indem Sie der Anleitung für Ihren unterstützten Identitätsanbieter folgen.
Definieren Sie den Pfad zur Konfigurationsdatei für Anmeldedaten in einer Umgebungsvariablen, als Attribut in der aktiven gcloud CLI-Konfiguration oder mit dem Befehl
gcloud auth login:Umgebungsvariable
Legen Sie die Umgebungsvariable
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDEauf den Pfad der Konfigurationsdatei für Anmeldedaten fest. Die gcloud CLI verweist bei jedem Ausführen eines Befehls auf die Datei und ruft Anmeldedaten von Ihrem Identitätsanbieter ab. Diese Anmeldedaten werden gegen ein Zugriffstoken für Cloud de Confiance by S3NSeingetauscht.Wenn Sie die Anmeldedaten-Konfigurationsdatei nicht mehr verwenden möchten, löschen Sie die Umgebungsvariable
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDE.gcloud CLI-Konfiguration
Legen Sie das Attribut
auth/credential_file_overrideder aktiven gcloud CLI-Konfiguration mit dem folgenden Befehl auf den Pfad der Anmeldedatenkonfigurationsdatei fest:gcloud config set auth/credential_file_override CONFIGURATION_PATHErsetzen Sie
CONFIGURATION_PATHdurch den Pfad zur Konfigurationsdatei für Anmeldedaten.Wenn Sie die Konfigurationsdatei für Anmeldedaten nicht mehr standardmäßig für
gcloud-Befehle verwenden möchten, heben Sie die Einstellung der Property mit dem folgenden Befehl auf:gcloud config unset auth/credential_file_overridegcloud auth login
Führen Sie den folgenden Befehl mit dem Flag
--cred-fileaus:Linux und macOS
gcloud auth login \ --cred-file=CONFIGURATION_PATHWindows (PowerShell)
gcloud auth login ` --cred-file=CONFIGURATION_PATHErsetzen Sie
CONFIGURATION_PATHdurch den Pfad zu einer Konfigurationsdatei für Anmeldedaten.Mit dem Befehl gcloud auth login werden Anmeldedaten für den Zugriff in Ihrem Basisverzeichnis gespeichert. Der authentifizierte Prinzipal wird zum aktiven Prinzipal in Ihrer aktiven gcloud CLI-Konfiguration. Sofern nicht anders angegeben, verwendet die gcloud CLI diese gespeicherten Anmeldedaten für den Zugriff auf Cloud de Confiance by S3NS.
Dienstkonten
Sie können die gcloud CLI mit einem Dienstkonto auf folgende Weise verwenden:
Auf einer Ressource, die einen Compute Engine-Metadatenserver bereitstellt, z. B. eine Compute Engine-VM-Instanz oder ein Cloud Run-Dienst. Die gcloud CLI verwendet standardmäßig das Dienstkonto, das der Ressource zugeordnet ist, für die Authentifizierung.
Ein anderes Hauptkonto verwenden, um die Identität eines Dienstkontos zu übernehmen.
Mit einem Dienstkontoschlüssel.
Identitätsübernahme des Dienstkontos
Führen Sie die folgenden Schritte aus, um die gcloud CLI mit einem Dienstkonto zu verwenden:
Wenn Sie die Identität eines Dienstkontos übernehmen möchten, muss die Service Account Credentials API in Ihrem Projekt aktiviert sein.
Rollen, die zum Aktivieren von APIs erforderlich sind
Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (
roles/serviceusage.serviceUsageAdmin), die die Berechtigungserviceusage.services.enableenthält. Weitere Informationen zum Zuweisen von RollenWählen Sie ein Hauptkonto aus, mit dem die Identität eines Dienstkontos übernommen werden soll.
-
Bitten Sie Ihren Administrator, dem Hauptkonto die IAM-Rolle Dienstkonto-Token-Ersteller (
roles/iam.serviceAccountTokenCreator) für das Dienstkonto zuzuweisen, damit das Hauptkonto die erforderliche Berechtigung hat, die Identität eines Dienstkontos zu übernehmen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.Diese vordefinierte Rolle enthält die Berechtigung
iam.serviceAccounts.getAccessToken, die erforderlich ist, um die Identität eines Dienstkontos zu übernehmen.Ihr Administrator kann dem Hauptkonto möglicherweise auch diese Berechtigung mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erteilen.
Authentifizieren Sie sich für die gcloud CLI mit dem zuvor ausgewählten Hauptkonto, unabhängig davon, ob es sich um ein föderierte Nutzeridentität, eine föderierte Arbeitslastidentität oder ein anderes Dienstkonto handelt.
Wählen Sie ein Dienstkonto aus, dessen Identität übernommen werden soll. Sie können entweder ein vorhandenes Dienstkonto suchen oder ein neues Dienstkonto erstellen.
Kopieren Sie die E-Mail-Adresse des Dienstkontos.
Wählen Sie aus, ob die Identität des Dienstkontos für alle Befehle oder nur für einen einzelnen Befehl übernommen werden soll:
Alle Befehle
Wenn Sie die Identitätsübernahme des Dienstkontos mit der gcloud CLI für zukünftige Befehle verwenden möchten, können Sie eine Umgebungsvariable oder eine Eigenschaft in der aktiven gcloud CLI-Konfiguration festlegen:
Umgebungsvariable: Legen Sie die Umgebungsvariable
CLOUDSDK_AUTH_IMPERSONATE_SERVICE_ACCOUNTauf die E-Mail-Adresse des Dienstkontos fest.Wenn Sie das Dienstkonto nicht mehr verwenden möchten, löschen Sie die Umgebungsvariable
CLOUDSDK_AUTH_IMPERSONATE_SERVICE_ACCOUNT.gcloud CLI-Konfiguration: Legen Sie das Attribut
auth/impersonate_service_accountder aktiven gcloud CLI-Konfiguration mit dem folgenden Befehl fest:gcloud config set auth/impersonate_service_account SERVICE_ACCOUNT_EMAILErsetzen Sie
SERVICE_ACCOUNT_EMAILdurch die E-Mail-Adresse des Dienstkontos.Wenn Sie die Identitätsübernahme des Dienstkontos nicht mehr standardmäßig für
gcloud-Befehle verwenden möchten, heben Sie die Einstellung der Property mit dem folgenden Befehl auf:gcloud config unset auth/impersonate_service_account
Einzelner Befehl
Wenn Sie die Identitätsübernahme des Dienstkontos mit der gcloud CLI für einen einzelnen Befehl verwenden möchten, können Sie einem gcloud CLI-Dienstbefehl das Flag
--impersonate-service-accounthinzufügen.Wenn Sie beispielsweise Compute Engine-VM-Instanzen mithilfe der Identitätsübernahme des Dienstkontos auflisten möchten, führen Sie den folgenden Befehl aus:
Linux und macOS
gcloud compute instances list \ --impersonate-service-account=SERVICE_ACCOUNT_EMAILWindows (PowerShell)
gcloud compute instances list ` --impersonate-service-account=SERVICE_ACCOUNT_EMAILErsetzen Sie
SERVICE_ACCOUNT_EMAILdurch die E-Mail-Adresse des Dienstkontos.
Dienstkontoschlüssel
Wir empfehlen, für die meisten Arbeitslasten, die außerhalb von Cloud de Confianceausgeführt werden, die Workload Identity-Föderation zu verwenden. Verwenden Sie Dienstkontoschlüssel nur, wenn Ihre Arbeitslast in einer isolierten externen Umgebung ausgeführt wird, die die Workload Identity-Föderation nicht unterstützt.
Die Identitätsföderation von Arbeitslasten bietet die folgenden Vorteile:
Der Zugriff auf Ressourcen wird über Identity and Access Management (IAM) gewährt. Dabei werden Arbeitslasten als einzelne Hauptkonten behandelt. Das bedeutet, dass Sie ein Dienstkonto nicht für mehrere Anwendungsfälle überberechtigen müssen.
Sie können prüfen, welche Arbeitslast welche Aufgabe ausführt. Aktionen werden nicht hinter der E-Mail-Adresse eines Dienstkontos verborgen.
Bei der Workload Identity-Föderation werden kurzlebige Zugriffstokens verwendet, um das Risiko von Datenexfiltration zu verringern. Dienstkontoschlüssel laufen nicht ab, sofern sie nicht manuell widerrufen werden.
So verwenden Sie ein Dienstkonto mit der gcloud CLI für zukünftige Befehle:
Erstellen Sie einen Dienstkontoschlüssel und speichern Sie ihn als Datei an einem sicheren Ort in Ihrer Umgebung.
Definieren Sie den Pfad zur Dienstkontoschlüsseldatei in einer Umgebungsvariable, als Attribut in der aktiven gcloud CLI-Konfiguration oder mit dem Befehl
gcloud auth login:Umgebungsvariable: Legen Sie die Umgebungsvariable
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDEauf den Pfad der Dienstkontoschlüsseldatei fest.Wenn Sie den Dienstkontoschlüssel nicht mehr verwenden möchten, löschen Sie die Umgebungsvariable
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDE.gcloud CLI-Konfiguration: Legen Sie mit dem folgenden Befehl den Pfad des Dienstkontoschlüssels für das Attribut
auth/credential_file_overrideder aktiven gcloud CLI-Konfiguration fest:gcloud config set auth/credential_file_override KEY_PATHErsetzen Sie
KEY_PATHdurch den Pfad zur Dienstkontoschlüsseldatei.Wenn Sie den Dienstkontoschlüssel nicht mehr standardmäßig für
gcloud-Befehle verwenden möchten, heben Sie die Einstellung des Attributs mit dem folgenden Befehl auf:gcloud config unset auth/credential_file_overridegcloud auth login: Führen Sie den folgenden Befehl mit dem Flag--cred-fileaus:Linux und macOS
gcloud auth login \ --cred-file=KEY_PATHWindows (PowerShell)
gcloud auth login ` --cred-file=KEY_PATHErsetzen Sie
KEY_PATHdurch den Pfad zur Dienstkontoschlüsseldatei.Mit dem Befehl gcloud auth login werden Anmeldedaten für den Zugriff in Ihrem Basisverzeichnis gespeichert. Der authentifizierte Prinzipal wird zum aktiven Prinzipal in Ihrer aktiven gcloud CLI-Konfiguration. Sofern nicht anders angegeben, verwendet die gcloud CLI diese gespeicherten Anmeldedaten für den Zugriff auf Cloud de Confiance by S3NS.
gcloud CLI mit einem Zugriffstoken verwenden
Wenn Sie sich bereits auf einem anderen Gerät für die gcloud CLI authentifiziert haben, können Sie mit dem folgenden Befehl ein Zugriffstoken für den aktiven Prinzipal dieses Geräts abrufen:
gcloud auth print-access-token
Sie können dieses Zugriffstoken dann auf einem anderen Gerät verwenden, um auf Cloud de Confiance by S3NS-Ressourcen zuzugreifen. Durch die Verwendung eines Zugriffstokens ist es nicht erforderlich, einen aktiven Prinzipal festzulegen. Außerdem wird jeder aktive Prinzipal überschrieben, der in der aktiven gcloud CLI-Konfiguration festgelegt ist.
Zugriffstokens für Nutzerkonten haben eine Standardgültigkeitsdauer von einer Stunde.
Sie können ein Zugriffstoken mit der gcloud CLI für zukünftige Befehle oder nur für einen einzelnen Befehl verwenden.
Alle Befehle
Wenn Sie ein Zugriffstoken mit der gcloud CLI für zukünftige Befehle verwenden möchten, können Sie eine Umgebungsvariable oder ein Attribut in der aktiven gcloud CLI-Konfiguration festlegen:
Umgebungsvariable: Legen Sie die Umgebungsvariable
CLOUDSDK_AUTH_ACCESS_TOKENauf den Zugriffstokenstring fest.Wenn Sie das Zugriffstoken nicht mehr verwenden möchten, entfernen Sie die Umgebungsvariable
CLOUDSDK_AUTH_ACCESS_TOKEN.gcloud CLI-Konfiguration: Speichern Sie das Zugriffstoken in einer Datei und legen Sie dann mit dem folgenden Befehl den Pfad der Datei für das Attribut
auth/access_token_fileder aktiven gcloud CLI-Konfiguration fest:gcloud config set auth/access_token_file ACCESS_TOKEN_PATHErsetzen Sie
ACCESS_TOKEN_PATHdurch den Pfad zur Datei mit dem Zugriffstoken.Wenn Sie nicht mehr standardmäßig ein Zugriffstoken für
gcloud-Befehle verwenden möchten, heben Sie die Einstellung mit dem folgenden Befehl auf:gcloud config unset auth/access_token_file
Einzelner Befehl
Wenn Sie ein Zugriffstoken mit der gcloud CLI für einen einzelnen Befehl verwenden möchten, können Sie das Flag --access-token-file einem gcloud CLI-Dienstbefehl hinzufügen:
Speichern Sie das Zugriffstoken in einer Datei.
Verwenden Sie das Flag
--access-token-filemit einem beliebigengcloud-Dienstbefehl.Wenn Sie beispielsweise Compute Engine-VM-Instanzen mit einem Zugriffstoken auflisten möchten, führen Sie den folgenden Befehl aus:
Linux und macOS
gcloud compute instances list \ --access-token-file ACCESS_TOKEN_PATHWindows (PowerShell)
gcloud compute instances list ` --access-token-file ACCESS_TOKEN_PATHErsetzen Sie
ACCESS_TOKEN_PATHdurch den Pfad zur Zugriffstoken-Datei.
Priorität der Anmeldedaten
Da in einer Umgebung möglicherweise mehrere Authentifizierungsmethoden verwendet werden, wertet die gcloud CLI die Methoden in einer bestimmten Reihenfolge aus, um zu ermitteln, welcher Prinzipal verwendet werden soll. Die gcloud CLI beginnt mit den bereitgestellten Anmeldedaten und prüft dann, ob die Identitätsübernahme des Dienstkontos angefordert wurde.
Die Reihenfolge der Auswertung der angegebenen Anmeldedaten ist wie folgt:
Die Umgebungsvariable
CLOUDSDK_AUTH_ACCESS_TOKEN, die auf den Zugriffstokenstring festgelegt ist.Zugriffstokendateien: Die Methoden zum Definieren der Zugriffstokendateipfade werden in der folgenden Reihenfolge ausgewertet:
Das Befehlszeilenflag
--access-token-file, das mit einem beliebigen gcloud CLI-Befehl verwendet wird.Die Umgebungsvariable
CLOUDSDK_AUTH_ACCESS_TOKEN_FILE.Das Attribut
auth/access_token_filein der aktiven gcloud CLI-Konfiguration.
Dateien mit Anmeldedaten Die Methoden zum Definieren der Anmeldedateipfade werden in der folgenden Reihenfolge ausgewertet:
Die Umgebungsvariable
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDE.Das Attribut
auth/credential_file_overridein der aktiven gcloud CLI-Konfiguration.
Das aktive Prinzipal, das mit dem Befehl
gcloud auth loginoder durch Festlegen des Attributscore/accountfestgelegt wird.
Priorität der Identitätsübernahme des Dienstkontos
Wenn die Identitätsübernahme des Dienstkontos angefordert wurde, prüft die gcloud CLI, welches Dienstkonto übernommen werden soll, nachdem Anmeldedaten für das Hauptkonto bereitgestellt wurden, das die Identitätsübernahme durchführt. Die Methoden, mit denen Dienstkonten für die Identitätsübernahme definiert werden, werden in der folgenden Reihenfolge ausgewertet:
Das Befehlszeilen-Flag
--impersonate-service-account.Die Umgebungsvariable
CLOUDSDK_AUTH_IMPERSONATE_SERVICE_ACCOUNT.Das Dienstkonto, das durch das Attribut
auth/impersonate_service_accountin der aktiven Konfiguration definiert wird.
gcloud CLI als Credential Helper zu Docker hinzufügen
Wenn Sie Containerregistries aus Artifact Registry abrufen möchten, können Sie die gcloud CLI als Credential Helper zu Ihrer Docker-Konfiguration hinzufügen.
Führen Sie dazu den Befehl gcloud auth configure-docker aus:
gcloud auth configure-docker REGION-docker.pkg.dev
Principals und Anmeldedaten verwalten
Mit dem Befehl gcloud auth login können Sie mehrere Principals in derselben Umgebung authentifizieren und die gcloud CLI autorisieren, in ihrem Namen auf Ressourcen zuzugreifen. Es kann jedoch jeweils nur ein Principal aktiv sein. In den folgenden Abschnitten wird beschrieben, wie Sie die Principals in Ihrer gcloud CLI-Konfiguration verwalten, einschließlich des Auflistens, des Wechsels zwischen ihnen und des Widerrufs ihrer Anmeldedaten.
Hauptkonten auflisten
Mit dem Befehl gcloud auth list können Sie die Principals auflisten, deren Anmeldedaten im lokalen System gespeichert sind (d. h. die mit gcloud auth login authentifiziert wurden):
gcloud auth list
Die gcloud CLI listet die Identitäten auf und zeigt an, welche Identität aktiv ist:
Credentialed Accounts
ACTIVE ACCOUNT
alex@altostrat.com
* bola@altostrat.com
principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/cruz@cymbalgroup.com
Überschreibungen für den aktiven Prinzipal sind nicht in dieser Liste enthalten. Dazu gehören die folgenden Umgebungsvariablen:
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDECLOUDSDK_AUTH_IMPERSONATE_SERVICE_ACCOUNT
Führen Sie den folgenden Befehl für Ihr Betriebssystem aus, um zu prüfen, ob diese Umgebungsvariablen festgelegt sind:
Linux und macOS
echo "$ENVIRONMENT_VARIABLE"
Windows (PowerShell)
echo $env:ENVIRONMENT_VARIABLE
Ersetzen Sie ENVIRONMENT_VARIABLE durch die Umgebungsvariable, die Sie prüfen möchten.
Überschreibungen für den aktiven Prinzipal umfassen auch die folgenden Konfigurationseigenschaften:
auth/credential_file_overrideauth/impersonate_service_account
Führen Sie den folgenden Befehl aus, um zu prüfen, ob diese Konfigurationseigenschaften festgelegt sind:
gcloud config list
Aktive Principals wechseln
Wenn Sie zu einem aktiven Prinzipal mit gespeicherten Anmeldedaten wechseln möchten (d. h. der gcloud auth login-Ablauf wurde bereits abgeschlossen), führen Sie gcloud config set aus:
gcloud config set account PRINCIPAL_IDENTIFIER
Ersetzen Sie PRINCIPAL_IDENTIFIER durch die vollständige Kennung des Hauptkontos.
Sie können auch auf folgende Weise zwischen Hauptkonten wechseln:
Erstellen Sie eine separate Konfiguration, in der ein anderes aktives Konto angegeben ist, und aktivieren Sie diese Konfiguration.
Verwenden Sie das Befehlszeilenflag
--account, um ein Hauptkonto für einen einzelnen Befehl anzugeben.Verwenden Sie eine Überschreibung wie ein Befehlszeilenflag, eine Umgebungsvariable oder eine Konfigurationseigenschaft.
Länge der Nutzersitzung einstellen
Administratoren können steuern, wie lange verschiedene Nutzer auf die gcloud CLI zugreifen können, ohne sich neu authentifizieren zu müssen. Sie können beispielsweise Nutzer mit erweiterten Berechtigungen dazu zwingen, sich häufiger als reguläre Nutzer neu zu authentifizieren.
Weitere Informationen finden Sie unter Sitzungsdauer für Cloud de Confiance -Dienste festlegen.
Anmeldedaten für ein Hauptkonto widerrufen
Sie können Anmeldedaten für Identitäten widerrufen, die sich mit gcloud auth login authentifiziert haben, damit die gcloud CLI nicht in ihrem Namen agieren kann.
Durch den Widerruf werden die Anmeldedaten auf den Autorisierungsservern von Google ungültig und das Prinzipal wird aus der aktiven gcloud CLI-Konfiguration entfernt.
Führen Sie zum Widerrufen von Anmeldedaten den Befehl gcloud auth revoke aus:
gcloud auth revoke PRINCIPAL_IDENTIFIER
Ersetzen Sie PRINCIPAL_IDENTIFIER durch die vollständige Kennung des Hauptkontos.
Wenn Sie den Zugriff für die gcloud CLI auf allen Geräten widerrufen möchten, die mit Ihrem Google-Konto verknüpft sind, rufen Sie in den Einstellungen Ihres Google-Kontos Drittanbieter-Apps und ‑Dienste auf und löschen Sie alle Verbindungen zum Google Cloud SDK.
Gespeicherte Anmeldedaten verwalten
Die gcloud CLI speichert die verwendeten Dateien mit Anmeldedaten im Konfigurationsverzeichnis der gcloud CLI. Mit gcloud info können Sie den Speicherort der Dateien mit Anmeldedaten aufrufen:
gcloud info
Die gcloud CLI gibt Informationen zu Ihrer Installation aus. Dateien mit Anmeldedaten werden im User Config Directory (Nutzerkonfigurationsverzeichnis) gespeichert, das in der Ausgabe definiert ist:
User Config Directory: [/home/USERNAME/.config/gcloud]
Unter Linux und macOS ist das Konfigurationsverzeichnis der gcloud CLI normalerweise /home/USERNAME/.config/gcloud. Unter Windows ist es %APPDATA%\gcloud.
Nächste Schritte
Weitere Informationen zum Anpassen der gcloud CLI finden Sie unter gcloud CLI-Eigenschaften.
Weitere Informationen zum Verwalten benannter Sätze von gcloud CLI-Attributen finden Sie unter Konfigurationen der gcloud CLI.
Informationen zur Authentifizierung von codebasierten Arbeitslasten, die Cloud-Clientbibliotheken oder Google API-Clientbibliotheken verwenden, finden Sie unter Funktionsweise von Standardanmeldedaten für Anwendungen.