Mitarbeiteridentitätsföderation mit PingOne AIC konfigurieren

Mit der Mitarbeiteridentitätsföderation können Sie PingOne Advanced Identity Cloud (AIC) als Identitätsanbieter (IdP) verwenden, um Ihre Mitarbeiter bei Google Cloudzu authentifizieren. Nachdem Sie die Integration von Security Assertion Markup Language (SAML) 2.0 konfiguriert haben, können föderierte Nutzer auf Google Cloud -Dienste zugreifen, die die Mitarbeiteridentitätsföderation unterstützen.

Hinweis

  1. Sie müssen eine Google Cloud -Organisation einrichten.
  2. Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Nach der Anmeldung initialisieren Sie die Google Cloud CLI mit dem folgenden Befehl:

    gcloud init
  3. Für die Anmeldung muss Ihr IdP signierte Authentifizierungsinformationen bereitstellen: SAML-IdP-Antworten müssen signiert sein.
  4. Wenn Sie wichtige Informationen zu Änderungen an Ihrer Organisation oder IhrenGoogle Cloud -Produkten erhalten möchten, müssen Sie Wichtige Kontakte angeben. Weitere Informationen finden Sie unter Mitarbeiteridentitätsföderation – Übersicht.

Kosten

Die Mitarbeiteridentitätsföderation ist kostenlos verfügbar. Für das detaillierte Audit-Logging der Mitarbeiteridentitätsföderation wird jedoch Cloud Logging verwendet. Informationen zu den Preisen für Logging finden Sie unter Google Cloud Observability – Preise.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle IAM-Mitarbeiterpool-Administrator (roles/iam.workforcePoolAdmin) für die Organisation zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren der Mitarbeiteridentitätsföderation benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Wenn Sie Berechtigungen in einer Entwicklungs- oder Testumgebung konfigurieren, aber nicht in einer Produktionsumgebung, können Sie die einfache IAM-Rolle (Identity and Access Management) „Inhaber“ (roles/owner) zuweisen. Diese Rolle enthält auch Berechtigungen für die Mitarbeiteridentitätsföderation.

Workforce Identity-Pool erstellen

gcloud

Führen Sie folgenden Befehl aus, um den Workforce Identity-Pool zu erstellen:

gcloud iam workforce-pools create WORKFORCE_POOL_ID \
    --organization=ORGANIZATION_ID \
    --display-name="DISPLAY_NAME" \
    --description="DESCRIPTION" \
    --session-duration=SESSION_DURATION \
    --location=global

Ersetzen Sie Folgendes:

  • WORKFORCE_POOL_ID: Eine ID, die Sie ausgewählt haben, um den Google Cloud -Workforce-Pool darzustellen. Die Pool-ID muss unter allen Workforce Identity-Pools in Google Cloudglobal eindeutig sein. Informationen zum Formatieren der ID finden Sie in der API-Dokumentation im Abschnitt Abfrageparameter.
  • ORGANIZATION_ID: die numerische Organisations-ID Ihrer Google Cloud -Organisation für den Workforce Identity-Pool. Workforce Identity-Pools sind für alle Projekte und Ordner in der Organisation verfügbar.
  • DISPLAY_NAME: Optional. Ein Anzeigename für Ihren Workforce Identity-Pool.
  • DESCRIPTION: Optional. Beschreibung des Workforce Identity-Pools.
  • SESSION_DURATION: Optional. Die Sitzungsdauer, angegeben als Zahl mit dem Suffix s, z. B. 3600s. Die Sitzungsdauer bestimmt, wie lange die Google Cloud -Zugriffstokens, die Console (föderiert)-Anmeldesitzungen und die gcloud CLI-Anmeldungssitzungen aus diesem Workforce-Pool gültig sind. Die Sitzungsdauer beträgt standardmäßig eine Stunde (3.600 s). Der Wert für die Sitzungsdauer muss zwischen 15 Minuten (900 s) und 12 Stunden (43.200 s) liegen.

Console

So erstellen Sie den Workforce Identity-Pool:

  1. Rufen Sie in der Google Cloud Console die Seite Workforce Identity-Pools auf:

    Zu Workforce Identity-Pools

  2. Wählen Sie die Organisation für Ihren Workforce Identity-Pool aus. Workforce Identity-Pools sind in allen Projekten und Ordnern einer Organisation verfügbar.

  3. Klicken Sie auf Pool erstellen und gehen Sie so vor:

    1. Geben Sie im Feld Name den Anzeigenamen des Pools ein. Die Pool-ID wird während der Eingabe automatisch aus dem Namen abgeleitet und unter dem Feld Name angezeigt. Sie können die Pool-ID aktualisieren, indem Sie neben der Pool-ID auf Bearbeiten klicken.

    2. Optional: Geben Sie unter Beschreibung eine Beschreibung des Pools ein.

    3. Klicken Sie zum Erstellen des Workforce Identity-Pools auf Weiter.

Die Sitzungsdauer des Workforce Identity-Pools beträgt standardmäßig eine Stunde (3.600 s). Die Sitzungsdauer bestimmt, wie lange die Google Cloud -Zugriffstokens, die Console (föderiert) und die gcloud CLI-Anmeldesitzungen aus diesem Workforce-Pool gültig sind. Nachdem Sie den Pool erstellt haben, können Sie ihn aktualisieren, um eine benutzerdefinierte Sitzungsdauer festzulegen. Die Sitzungsdauer muss zwischen 15 Minuten (900 Sek.) und 12 Stunden (43.200 Sek.) liegen.

PingOne AIC-Anwendung erstellen

In diesem Abschnitt erfahren Sie, wie Sie eine PingOne AIC-Application Integration erstellen.

Gehosteten IdP erstellen

  1. Gehen Sie unter Native Consoles > Access Management zu Realms > REALM_NAME > Dashboard und klicken Sie auf SAML Applications.
  2. Klicken Sie auf Entitätsanbieter hinzufügen > Gehostet.
  3. Geben Sie eine Entitäts-ID ein. Notieren Sie sich diesen Wert für die spätere Verwendung.

    1. Prüfen Sie, ob der Wert für Entity Provider Base URL (Basis-URL des Entitätsanbieters) korrekt ist. Advanced Identity Cloud verwendet diesen Wert für alle SAML 2.0-bezogenen Endpunkte.
    2. Geben Sie im Abschnitt Meta Aliases einen URL-freundlichen Wert in das Attribut Identity Provider Meta Alias ein. Dieser Alias muss im Circle of Trust eindeutig sein.
    3. Klicken Sie auf Erstellen.
    4. Ordnen Sie auf dem Tab Assertion Processing im Abschnitt Attribute Mapper SAML-Attributnamen lokalen Attributnamen zu. Die SAML-Attributnamen sind die Namen, die in einer Assertion verwendet werden.
    5. Klicken Sie für jede Zuordnung auf Hinzufügen oder Aktualisieren.
    6. Klicken Sie auf Änderungen speichern.

Attribute verwenden

In diesem Abschnitt wird beschrieben, wie Sie Attribute aus der SAML-Assertion verwenden.

In den folgenden Beispielen werden Attribute in der SAML-Assertion lokalen Attributen zugeordnet:

SAML-Attribut Lokales Attribut
IDPEmail mail
FirstName givenName
groups groups

Richten Sie im Bereich „Attributzuordnung“ die erforderlichen Attribute ein. Sie ordnen diese Attribute zu, wenn Sie den Anbieter des Workforce Identity-Pools später in dieser Anleitung erstellen.

Anbietermetadaten exportieren

Sie können auf die SAML 2.0-Metadaten für Ihren Hostanbieter auf eine der folgenden Arten zugreifen:

  • Über REST

    Führen Sie dazu diesen Befehl aus:

    curl --output METADATA_XML \
        "https://TENANT_ENV_FQDN/am/ExportSamlMetadata?entityid=ENTITY_ID&realm=/REALM"
    
  • In einem Browser

    Öffnen Sie die Metadaten-URL Ihrer Mandantenumgebung in einem Browser, um die XML-Datei herunterzuladen: https://TENANT_ENV_FQDN/am/ExportSamlMetadata?entityid=ENTITY_ID&realm=/REALM

  1. Speichern Sie die XML-Datei auf Ihrem lokalen Computer.

Google als Remote-SP importieren

  1. Bereiten Sie die XML-Datei mit den Metadaten des Google Cloud -Dienstanbieters vor. Verwenden Sie die folgende Vorlage und ersetzen Sie die Platzhalterwerte:

    <?xml version="1.0" encoding="UTF-8"?>
    <md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" entityID="https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID">
       <md:SPSSODescriptor AuthnRequestsSigned="false" WantAssertionsSigned="true" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
          <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat>
          <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress</md:NameIDFormat>
          <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://auth./signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID" index="0" isDefault="true"/>
       </md:SPSSODescriptor>
    </md:EntityDescriptor>
    
  2. Importieren Sie die Metadaten auf eine der folgenden Arten:

    • In der Console

      1. Rufen Sie in der PingOne AIC-Admin-Konsole SAML Applications (SAML-Anwendungen) auf.
      2. Klicken Sie auf Entitätsanbieter hinzufügen > Remote.
      3. Laden Sie die soeben erstellte XML-Datei mit den SP-Metadaten von Google Cloud hoch.
      4. Klicken Sie auf Erstellen.
    • Über REST

      1. Konvertieren Sie die XML-Metadaten in einen base64url-codierten String.
      2. Zugriffstoken anfordern
      3. Führen Sie dazu diesen Befehl aus:

        curl --request POST \
            --header 'authorization: Bearer ACCESS_TOKEN' \
            --header 'Content-Type: application/json' \
            --header 'Accept-API-Version: resource=1.0' \
            --data-raw '{"standardMetadata": "BASE64URL_ENCODED_METADATA"}' \
            'https://TENANT_ENV_FQDN/am/json/realms/root/realms/alpha/realm-config/saml2/remote?_action=importEntity'
        

Circle of Trust (CoT) erstellen

  1. Gehen Sie zu Realms > REALM_NAME > Applications > Federation > Circles of Trust.
  2. Klicken Sie auf Circle of Trust hinzufügen.
  3. Geben Sie einen Namen ein und klicken Sie auf Erstellen.
  4. Wählen Sie auf der Seite Circle of Trust im Attribut Entity Providers Ihren gehosteten IdP und den Remote-SP von Google Cloud aus.
  5. Klicken Sie auf Änderungen speichern.

PingOne AIC-Workforce Identity-Pool-Anbieter erstellen

In diesem Abschnitt wird beschrieben, wie Sie einen Anbieter von Workforce Identity-Pools erstellen, um Ihren IdP-Nutzern den Zugriff auf Google Cloudzu ermöglichen. Sie können den Anbieter so konfigurieren, dass er das SAML-Protokoll verwendet.

SAML-Workforce Identity-Pool-Anbieter erstellen

  1. Wenn Sie einen SAML-Anbieter für Mitarbeiteridentitätspools erstellen möchten, müssen die Metadaten Ihres Identitätsanbieters mindestens die SAML-Entitäts-ID, die URL für die Einmalanmeldung und einen öffentlichen Signaturschlüssel enthalten. Gehen Sie hierzu folgendermaßen vor:

    gcloud

    1. Speichern Sie die SAML-Metadaten aus Ihrer PingOne AIC-Anwendung.

    2. Mit dem folgenden Befehl erstellen Sie den Anbieter des SAML-Mitarbeiteridentitätspools:

      gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \
          --workforce-pool="WORKFORCE_POOL_ID" \
          --display-name="DISPLAY_NAME" \
          --description="DESCRIPTION" \
          --idp-metadata-path="XML_METADATA_PATH" \
          --attribute-mapping="ATTRIBUTE_MAPPING" \
          --attribute-condition="ATTRIBUTE_CONDITION" \
          --location=global
      

      Ersetzen Sie Folgendes:

      • WORKFORCE_PROVIDER_ID: eine Anbieter-ID.
      • WORKFORCE_POOL_ID: die ID des Mitarbeiteridentitätspools.
      • DISPLAY_NAME: ein Anzeigename.
      • DESCRIPTION: eine Beschreibung.
      • XML_METADATA_PATH: der Pfad zur XML-formatierten Metadatendatei, die Sie aus PingOne AIC exportiert haben.
      • ATTRIBUTE_MAPPING: die Attributzuordnung; Beispiel: google.subject=assertion.subject,google.groups=assertion.attributes.groups,attribute.department=assertion.attributes.department[0].
      • ATTRIBUTE_CONDITION: eine optionale Attributbedingung. Wenn Sie beispielsweise das Attribut ipaddr auf einen bestimmten IP-Bereich beschränken möchten, können Sie die Bedingung assertion.ipaddr.startsWith('98.11.12.') festlegen.

      Weitere Informationen finden Sie unter Attributzuordnung.

      Mit diesem Befehl werden subject, groups und department in der SAML-Assertion den Attributen google.subject, google.groups bzw. attribute.department zugewiesen. Durch die Attributbedingung wird außerdem sichergestellt, dass sich nur Nutzer innerhalb eines bestimmten IP-Bereichs über diesen Workforce-Anbieter anmelden können.

    Console

    So konfigurieren Sie den SAML-Anbieter mit der Google Cloud Console:

    1. Rufen Sie in der Google Cloud Console die Seite Workforce Identity-Pools auf: Zu „Workforce Identity-Pools“
    2. Wählen Sie in der Tabelle Workforce Identity-Pools den Pool aus, für den Sie den Anbieter erstellen möchten.
    3. Klicken Sie im Bereich Anbieter auf Anbieter hinzufügen.
    4. Wählen Sie in der Liste Anbieter auswählen die Option Generischer Identitätsanbieter aus.
    5. Wählen Sie unter Authentifizierungsprotokoll auswählen die Option SAML aus.
    6. Führen Sie im Abschnitt Anbieter erstellen die folgenden Schritte aus:
      1. Geben Sie unter Name einen Namen für den Anbieter ein.
      2. Optional: Geben Sie unter Beschreibung eine Beschreibung für den Anbieter ein.
      3. Wählen Sie in der IdP-Metadatendatei (XML) die XML-Metadatendatei aus, die Sie aus PingOne AIC exportiert haben.
      4. Wenn Sie einen aktivierten Anbieter erstellen möchten, muss die Option Anbieter aktivieren aktiviert sein.
      5. Klicken Sie auf Weiter.
    7. Klicken Sie im Abschnitt Anbieterinformationen freigeben auf Weiter.
    8. Optional: Wenn Sie das detaillierte Audit-Logging aktivieren möchten, klicken Sie im Bereich Anbieter konfigurieren unter Detailliertes Logging auf den Ein/Aus-Button Audit-Logging für Attributwerte aktivieren.

      Mit dem detaillierten Audit-Logging der Mitarbeiteridentitätsföderation werden Informationen, die von Ihrem IdP empfangen werden, in Logging protokolliert. Mit dem detaillierten Audit-Logging können Sie Probleme mit der Konfiguration Ihres Workforce Identity-Poolanbieters beheben. Informationen zur Fehlerbehebung bei Attributzuordnungsfehlern mit detailliertem Audit-Logging finden Sie unter Allgemeine Attributzuordnungsfehler. Informationen zu den Preisen für Logging finden Sie unter Google Cloud Observability-Preise.

      Wenn Sie das detaillierte Audit-Logging für einen Anbieter von Workforce Identity-Pools deaktivieren möchten, lassen Sie die Option Audit-Logging für Attributwerte aktivieren beim Erstellen des Anbieters deaktiviert. Wenn Sie das detaillierte Audit-Logging deaktivieren möchten, können Sie auch den Anbieter aktualisieren.

    9. Klicken Sie auf Senden, um den Anbieter zu erstellen.

    Nachdem der Anbieter erstellt wurde, werden Sie zur Seite mit den Anbieterattributen weitergeleitet.

    So konfigurieren Sie Attributzuordnungen und ‑bedingungen:

    1. Melden Sie sich bei Aufforderung bei Ihrem externen IdP an, um die Standardattributzuordnungen zu validieren.
    2. Auf der Seite mit den Anbieterattributen können Sie die Attributzuordnungen und ‑bedingungen ansehen und bearbeiten:

      1. So fügen Sie Attributzuordnungen hinzu oder bearbeiten sie:

        1. Klicken Sie auf Zuordnung hinzufügen, um eine neue Zuordnung hinzuzufügen, oder bearbeiten Sie die vorhandenen Zuordnungen.
        2. Wählen Sie im Feld Google n, wobei n eine Zahl ist, einen von Google Cloudunterstützten Schlüssel aus.
        3. Geben Sie im entsprechenden Feld SAML n den IdP-Attributnamen oder einen CEL-Ausdruck ein, z. B.:

          google.subject=assertion.subject,
          google.groups=assertion.attributes['https://example.com/aliases'],
          attribute.costcenter=assertion.attributes.costcenter[0]
          
      2. So fügen Sie eine Attributbedingung hinzu:

        1. Klicken Sie auf Bedingung hinzufügen.
        2. Geben Sie im Feld Attributbedingungen eine Bedingung im CEL-Format ein, z. B. assertion.attributes.ipaddr.startsWith('98.11.12.').
    3. Klicken Sie auf Speichern und Token neu abrufen, um die Zuordnungen zu validieren.

    4. Klicken Sie auf Speichern und beenden, um die Einrichtung abzuschließen.

Zugriff auf Ressourcen von Google Cloud verwalten

In diesem Abschnitt wird beschrieben, wie Sie den Zugriff auf Google Cloud -Ressourcen für PingOne AIC-Nutzer verwalten.

Das in diesem Leitfaden verwendete Beispielprojekt kann sich von dem Projekt unterscheiden, das Sie zum Einrichten der Mitarbeiteridentitätsföderation verwendet haben.

Sie können Rollen für einzelne Identitäten, Identitätsgruppen oder gesamte Pools verwalten. Weitere Informationen finden Sie unter Hauptkonto-IDs für Zulassungsrichtlinien.

Zugeordnete Abteilungsattribute verwenden

Führen Sie den folgenden Befehl aus, um allen Identitäten innerhalb einer bestimmten Abteilung für das Projekt TEST_PROJECT_ID die Rolle „Storage-Administrator“ (roles/storage.admin) zuzuweisen:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/attribute.department/DEPARTMENT_VALUE"

Ersetzen Sie Folgendes:

  • TEST_PROJECT_ID: Projekt-ID.
  • WORKFORCE_POOL_ID: die ID des Mitarbeiteridentitätspools.
  • DEPARTMENT_VALUE: der zugeordnete Wert attribute.department

Zugeordnete Gruppen verwenden

Führen Sie den folgenden Befehl aus, um allen Identitäten innerhalb der Gruppe GROUP_ID für das Projekt TEST_PROJECT_ID die Rolle „Storage-Administrator“ (roles/storage.admin) zuzuweisen:

gcloud projects add-iam-policy-binding TEST_PROJECT_ID \
    --role="roles/storage.admin" \
    --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"

Ersetzen Sie Folgendes:

  • TEST_PROJECT_ID: Projekt-ID.
  • WORKFORCE_POOL_ID: die ID des Mitarbeiteridentitätspools.
  • GROUP_ID: eine Gruppe im zugeordneten google.groups-Anspruch.

Anmelden und Zugriff testen

In diesem Abschnitt melden Sie sich als Nutzer eines Workforce Identity-Pools an und testen Ihren Zugriff.

Anmelden

(Föderierte) Anmeldung bei der Console

So melden Sie sich in der Google Cloud Console für die Mitarbeiteridentitätsföderation an, die auch als Console (föderiert) bezeichnet wird:

  1. Rufen Sie die (föderierte) Anmeldeseite der Konsole auf.

    Zur Konsole (föderiert)

  2. Geben Sie den Namen des Anbieters ein. Er muss so formatiert sein:
    locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
  3. Geben Sie Ihre PingOne AIC-Anmeldedaten ein, wenn Sie dazu aufgefordert werden.

Browserbasierte Anmeldung bei der Google Cloud CLI

So melden Sie sich mit einem browserbasierten Anmeldevorgang in der gcloud CLI 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 Workforce Identity-Föderationspools.
  • WORKFORCE_PROVIDER_ID: Die ID des Anbieters der Mitarbeiteridentitätsföderation.
  • LOGIN_CONFIG_PATH: Der Pfad, in den die Konfigurationsdatei für die Anmeldung 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 Anbieter des Workforce Identity-Pools konfiguriert wurde. Die Datei enthält keine vertraulichen Informationen.

Der Inhalt der Konfigurationsdatei für die Anmeldung sieht in etwa so aus:

{
  "universe_domain": "",
  "universe_cloud_web_domain": "",
  "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./authorize",
  "token_url": "https://sts./v1/oauthtoken",
  "token_info_url": "https://sts./v1/introspect"
}

Verweisen Sie mit einer Umgebungsvariablen, 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 Umgebungsvariablen:

  1. Legen Sie die Umgebungsvariable CLOUDSDK_AUTH_LOGIN_CONFIG_FILE auf den Pfad der Konfigurationsdatei für die Anmeldung fest.
  2. Führen Sie dazu diesen Befehl aus:

    gcloud auth login
  3. Die gcloud CLI verweist auf die Umgebungsvariable, um die Konfigurationsdatei für die Anmeldung zu finden, und startet dann den Authentifizierungsprozess. Folgen Sie dem browserbasierten Ablauf, um die gcloud CLI zu authentifizieren und zu autorisieren, damit sie bei zukünftigen Befehlen in Ihrem Namen auf Ressourcen zugreifen kann.

Wenn Sie die Konfigurationsdatei für die Anmeldung nicht mehr für gcloud auth login-Befehle verwenden möchten, löschen Sie die Umgebungsvariable CLOUDSDK_AUTH_LOGIN_CONFIG_FILE.

gcloud CLI-Konfiguration

So verwenden Sie die Konfigurationsdatei für die Anmeldung mit einem gcloud CLI-Konfigurationsattribut:

  1. Legen Sie mit dem folgenden Befehl das Attribut auth/login_config_file der aktiven gcloud CLI-Konfiguration auf den Pfad der Anmeldekonfigurationsdatei fest:

    gcloud config set auth/login_config_file LOGIN_CONFIG_PATH
  2. Führen Sie dazu diesen Befehl aus:

    gcloud auth login
  3. Die gcloud CLI verweist auf das Konfigurationsattribut, um die Konfigurationsdatei für die Anmeldung zu finden, und startet dann den Authentifizierungsprozess. Folgen Sie dem browserbasierten Ablauf, um die gcloud CLI zu authentifizieren und zu autorisieren, damit sie bei zukünftigen Befehlen in Ihrem Namen auf Ressourcen zugreifen kann.

Wenn Sie die Konfigurationsdatei für die Anmeldung für gcloud auth login-Befehle nicht mehr verwenden möchten, heben Sie die Einstellung des Attributs 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 login verwenden möchten, folgen Sie dieser Anleitung:

  • Wenn Sie das Flag --activate beim Erstellen der Konfigurationsdatei für die Anmeldung verwendet haben, führen Sie den folgenden Befehl aus:

    gcloud auth login
  • Wenn Sie das Flag --activate beim 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 Konfigurationsdatei für die Anmeldung.

Mit dem Befehl gcloud auth login werden Zugriffsanmeldedaten in Ihrem Basisverzeichnis gespeichert. Das authentifizierte Hauptkonto wird zum aktiven Hauptkonto in Ihrer aktiven gcloud CLI-Konfiguration. Sofern nicht überschrieben, verwendet die gcloud CLI diese gespeicherten Anmeldedaten, um auf Google Cloudzuzugreifen.

Monitorlose Anmeldung bei der gcloud CLI

So melden Sie sich mit der gcloud CLI über das SAML-Protokoll in PingOne AIC an:

  1. Melden Sie einen Nutzer bei Ihrer PingOne AIC-Anwendung an und rufen Sie die SAML-Antwort ab.
  2. Speichern Sie die von PingOne AIC zurückgegebene SAML-Antwort an einem sicheren Ort auf Ihrem lokalen Computer. Speichern Sie den Pfad in einer Umgebungsvariablen, z. B. SAML_ASSERTION_PATH=/tmp/saml_assertion.xml.
  3. Generieren Sie eine Konfigurationsdatei:

    gcloud iam workforce-pools create-cred-config \
        locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID \
        --subject-token-type=urn:ietf:params:oauth:token-type:saml2 \
        --credential-source-file=SAML_ASSERTION_PATH \
        --workforce-pool-user-project=PROJECT_ID \
        --output-file=config.json
    

    Ersetzen Sie Folgendes:

    • SAML_ASSERTION_PATH: der Pfad der SAML-Assertion-Datei.
    • PROJECT_ID: Projekt-ID.
  4. Die generierte Konfigurationsdatei sieht in etwa so aus:

    {
      "type": "external_account",
      "audience": "//iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID",
      "subject_token_type": "urn:ietf:params:oauth:token-type:saml2",
      "token_url": "https://sts.googleapis.com/v1/token",
      "credential_source": {
        "file": "SAML_ASSERTION_PATH"
      },
      "workforce_pool_user_project": "PROJECT_ID"
    }
    
  5. Führen Sie den folgenden Befehl aus, um sich mit Token-Austausch in der gcloud CLI anzumelden:

    gcloud auth login --cred-file=config.json
    

    gcloud tauscht dann Ihre PingOne AIC-Anmeldedaten transparent gegen temporäre Google Cloud -Zugriffstokens aus, sodass Sie andere gcloud-Aufrufe an Google Cloudsenden können. Die Ausgabe sieht etwa so aus:

    Authenticated with external account user credentials for: [principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject/USER_ID].

  6. Führen Sie folgenden Befehl aus, um die Konten mit Anmeldedaten und das aktive Konto aufzulisten:

    gcloud auth list
    

Zugriff testen

Sie können auf die Google Cloud -Dienste zugreifen, die die Mitarbeiteridentitätsföderation unterstützen und auf die Sie Zugriff haben. Sie haben zuvor in diesem Leitfaden allen Identitäten innerhalb einer bestimmten Abteilung oder Gruppe für das Projekt TEST_PROJECT_ID die Rolle „Storage-Administrator“ zugewiesen. Sie können testen, ob Sie Zugriff haben. Dazu listen Sie Cloud Storage-Buckets auf.

(Föderierte) Anmeldung bei der Console

So prüfen Sie Ihren Zugriff in der Console (föderiert):

  1. Gehen Sie zur Seite Cloud Storage
  2. Prüfen Sie, ob Sie die Liste der vorhandenen Buckets für das Projekt TEST_PROJECT_ID sehen können.

gcloud-CLI

Führen Sie folgenden Befehl aus, um Cloud Storage-Buckets und -Objekte für das Projekt aufzulisten, auf das Sie Zugriff haben:

gcloud alpha storage ls --project="TEST_PROJECT_ID"

Das Hauptkonto muss die Berechtigung serviceusage.services.use für das Projekt haben, das in der gcloud CLI-Sitzung festgelegt ist: PROJECT_ID.

Nächste Schritte