Workload Identity-Pools und -Poolanbieter verwalten

Auf dieser Seite wird erläutert, wie Sie Ihre vorhandenen Workload Identity-Pools und deren Identitätsanbieter verwalten.

Sie können Pools und Anbieter mit der Google Cloud Console, dem gcloud-Befehlszeilentool oder der REST API verwalten.

Hinweis

Erstellen Sie einen Workload Identity-Pool. Informationen zur Vorgehensweise finden Sie auf den folgenden Seiten:

Workload Identity-Pools verwalten

Pools auflisten

So listen Sie alle Workload Identity-Pools in einem Projekt auf:

Console

Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

Zu Workload Identity-Pools

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools list aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.list() auf.

Pool aufrufen

So rufen Sie Details zu einem bestimmten Workload Identity-Pool auf:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie den Workload Identity-Pool, den Sie sehen möchten, und klicken Sie auf das -Symbol Bearbeiten. In der Cloud Console werden Details zum Workload Identity-Pool angezeigt.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools describe aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.get() auf.

Pool aktualisieren

Sie können einen Workload Identity-Pool aktivieren oder deaktivieren. Sie können auch den Anzeigenamen oder die Beschreibung ändern.

So aktualisieren Sie einen vorhandenen Workload Identity-Pool:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie nach dem Workload Identity-Poolanbieter, den Sie bearbeiten möchten, und klicken Sie auf das -Symbol Bearbeiten.

    Klicken Sie zum Deaktivieren oder Aktivieren des Workload Identity-Pools auf die Ein-/Aus-Schaltfläche Status und dann auf Deaktivieren oder Aktivieren.

    Klicken Sie zum Bearbeiten des Anzeigenamens neben dem Anzeigenamen auf Bearbeiten. Aktualisieren Sie den Namen und klicken Sie dann auf Speichern.

    Verwenden Sie zum Bearbeiten der Beschreibung das gcloud-Tool oder die REST API.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools update aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.patch() auf.

Pool löschen

Wenn Sie einen Workload Identity-Pool löschen, werden auch die Anbieter von Workload Identity-Pools gelöscht. Dadurch verlieren die Identitäten im Pool den Zugriff auf Google Cloud-Ressourcen.

Sie können einen Pool bis zu 30 Tage nach dem Löschen wiederherstellen. Nach 30 Tagen wird der Pool endgültig gelöscht. Erst nachdem ein Pool endgültig gelöscht wurde, können Sie seinen Namen beim Erstellen eines neuen Workload Identity-Pools wiederverwenden.

So löschen Sie einen Workload Identity-Pool und die zugehörigen Identitätsanbieter:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie den Workload Identity-Pool, den Sie löschen möchten, und klicken Sie auf das -Symbol Bearbeiten.

  3. Klicken Sie auf Pool löschen und dann auf Löschen. Der Workload Identity-Pool und die zugehörigen Identitätsanbieter werden gelöscht.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools delete aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.delete() auf.

Pool wiederherstellen

Sie können einen gelöschten Workload Identity-Pool bis zu 30 Tage nach dem Löschen wiederherstellen.

So stellen Sie einen Pool wieder her:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Klicken Sie auf den Schalter Gelöschte Pools und Anbieter anzeigen.

  3. Suchen Sie den Workload Identity-Pool, den Sie wiederherstellen möchten, und klicken Sie dann auf das Symbol Wiederherstellen.

  4. Klicken Sie auf Wiederherstellen. Der Pool und seine Anbieter werden wiederhergestellt.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools undelete aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.undelete() auf.

Workload Identity-Anbieter verwalten

Anbieter erstellen

So erstellen Sie in einem vorhandenen Workload Identity-Anbieter einem bestehenden Workload Identity-Pool:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie den Workload Identity-Pool, dem Sie einen Anbieter hinzufügen möchten, und klicken Sie dann auf das -Symbol Bearbeiten.

  3. Klicken Sie auf Anbieter hinzufügen.

  4. Wählen Sie den Anbietertyp aus, der erstellt werden soll:

    • AWS: Ein AWS-Identitätsanbieter (Amazon Web Services).
    • OpenID Connect (OIDC): Ein OIDC-kompatibler Identitätsanbieter. Dies schließt Microsoft Azure ein.
  5. Geben Sie einen Namen für den Anbieter ein.

    Die Cloud Console verwendet den Namen zum Erstellen einer Pool-ID: Klicken Sie zum Ändern der Pool-ID auf Bearbeiten. Sie können die Anbieter-ID später nicht ändern.

  6. Füllen Sie die übrigen Felder für Ihren Anbieter aus:

    • AWS: Geben Sie Ihre AWS-Konto-ID ein.
    • OIDC: Geben Sie die Aussteller-URL ein. Bei Azure verwendet die Aussteller-URL das Format https://sts.windows.net/AZURE_TENANT_ID. Informationen zu anderen Anbietern erhalten Sie in der entsprechenden Dokumentation.

    Wenn Sie fertig sind, klicken Sie auf Weiter.

  7. Klicken Sie zum Konfigurieren der Attributzuordnung auf Zuordnung bearbeiten. Mithilfe der Attributzuordnung können Sie Informationen zu externen Identitäten verwenden, um einer Teilmenge dieser Identitäten Zugriff zu gewähren.

  8. Optional: Wenn Sie eine Attributbedingung angeben möchten, mit der die Identitäten authentifiziert werden können, klicken Sie auf Bedingung hinzufügen und geben Sie einen gültigen Ausdruck der Common Expression Language (CEL) ein. Weitere Informationen finden Sie unter Attributbedingungen.

  9. Klicken Sie auf Speichern. Der Workload Identity-Poolanbieter wird erstellt.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers create-aws aus, um einen AWS-Anbieter zu erstellen.

Führen Sie den Befehl gcloud iam workload-identity-pools providers create-oidc aus, um einen OIDC-Anbieter zu erstellen. Dies schließt Microsoft Azure ein.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.create() auf.

Dienstanbieter auflisten

So listen Sie Anbieter von Workload Identity-Pools in einem Projekt auf:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Klicken Sie zum Anzeigen der Anbieter für einen Workload Identity-Pool auf das Symbol Knoten für den Pool erweitern.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers list aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.list() auf.

Dienstanbieter aufrufen

So rufen Sie Details zu einem bestimmten Workload Identity-Anbieter auf:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie nach dem Workload Identity-Pool, der den Anbieter enthält, und klicken Sie dann auf das Symbol Knoten für den Pool maximieren.

  3. Suchen Sie nach dem Workload Identity-Poolanbieter, den Sie sehen möchten, und klicken Sie auf das -Symbol Bearbeiten. In der Cloud Console werden detaillierte Informationen zum Anbieter angezeigt.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers describe aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.get() auf.

Anbieter aktualisieren

Sie können einen Workload Identity-Poolanbieter aktivieren oder deaktivieren. Sie können auch die Kontoinformationen und die Attributzuordnung sowie den Anzeigenamen und die Beschreibung aktualisieren.

So aktualisieren Sie einen vorhandenen Workload Identity-Anbieter:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie nach dem Workload Identity-Pool, der den Anbieter enthält, und klicken Sie dann auf das Symbol Knoten für den Pool maximieren.

  3. Suchen Sie nach dem Workload Identity-Poolanbieter, den Sie bearbeiten möchten, und klicken Sie auf das -Symbol Bearbeiten.

  4. Bearbeiten Sie die Informationen des Anbieters und klicken Sie dann auf Speichern.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers update-aws aus, um einen AWS-Anbieter zu aktualisieren.

Führen Sie den Befehl gcloud iam workload-identity-pools providers update-oidc aus, um einen OIDC-Anbieter zu aktualisieren: Dies schließt Microsoft Azure ein.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.patch() auf.

Anbieter löschen

Wenn Sie einen Anbieter für Workload Identity-Pools löschen, verlieren die Identitäten des Anbieters den Zugriff auf Google Cloud-Ressourcen.

Sie können einen Anbieter bis zu 30 Tage nach dem Löschen wiederherstellen. Nach 30 Tagen wird der Pool endgültig gelöscht. Erst nachdem ein Anbieter endgültig gelöscht wurde, können Sie seinen Namen beim Erstellen eines neuen Anbieters wiederverwenden.

So löschen Sie einen Workload Identity-Poolanbieter:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Suchen Sie den Workload Identity-Pool, der den Anbieter enthält, und klicken Sie dann auf das zugehörige Symbol Bearbeiten.

  3. Suchen Sie im Bereich Anbieter den Anbieter, den Sie löschen möchten, und klicken Sie auf sein -Symbol Löschen.

  4. Klicken Sie auf Löschen, um den Anbieter zu löschen.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers delete aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.delete() auf.

Anbieter wiederherstellen

Sie können einen gelöschten Workload Identity-Anbieter bis zu 30 Tage nach dem Löschen wiederherstellen. So stellen Sie einen Anbieter wieder her:

Console

  1. Rufen Sie in der Cloud Console die Seite Workload Identity-Pools auf.

    Zu Workload Identity-Pools

  2. Klicken Sie auf den Schalter Gelöschte Pools und Anbieter anzeigen.

  3. Suchen Sie nach dem Workload Identity-Pool, der den Anbieter enthält, und klicken Sie dann auf das Symbol Knoten für den Pool maximieren.

  4. Suchen Sie den Anbieter, den Sie wiederherstellen möchten, und klicken Sie dann auf das Symbol Wiederherstellen.

  5. Klicken Sie auf Wiederherstellen. Der Anbieter wird wiederhergestellt.

gcloud

Führen Sie den Befehl gcloud iam workload-identity-pools providers undelete aus.

REST

Rufen Sie projects.locations.workloadIdentityPools.providers.undelete() auf.

Einschränkungen für die Föderation der Workload Identity verwalten

Sie können Einschränkungen für Organisationsrichtlinien verwenden, um einzuschränken, wie Ressourcen in Ihrer Google Cloud-Organisation verwendet werden können.

In diesem Abschnitt werden Einschränkungen beschrieben, die bei der Verwendung der Föderation für Workload Identity empfohlen werden.

Konfiguration des Identitätsanbieters einschränken

Als Organisationsadministrator können Sie entscheiden, mit welchen Identitätsanbietern Ihre Organisation verbunden werden soll.

Aktivieren Sie dazu die Listeneinschränkung constraints/iam.workloadIdentityPoolProviders in der Organisationsrichtlinie für Ihre Organisation. Die Einschränkung legt die Aussteller-URIs der zulässigen Anbieter fest. Sie können diese Einschränkung mit der Cloud Console oder dem gcloud-Befehlszeilentool aktivieren.

Wenn Sie die Föderation nur über AWS zulassen möchten, erstellen Sie eine einzelne Einschränkung mit dem URI https://sts.amazonaws.com. Das folgende Beispiel zeigt, wie diese Einschränkung mit dem gcloud-Tool erstellt wird:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     https://sts.amazonaws.com --organization=ORGANIZATION_NUMBER

Sie können auch angeben, welche AWS-Konto-IDs Zugriff auf Ihre Google Cloud-Ressourcen haben. Verwenden Sie die Listeneinschränkung constraints/iam.workloadIdentityPoolAwsAccounts, um die Konto-IDs anzugeben:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolAwsAccounts \
    ACCOUNT_ID --organization=ORGANIZATION_NUMBER

Wenn Sie die Föderation nur über einen einzigen OIDC-Anbieter zulassen möchten, erstellen Sie eine einzelne Einschränkung mit dem issuer_uri des zugelassenen Anbieters. Im folgenden Beispiel wird nur die Föderation über einen bestimmten Azure-Mandanten zugelassen:

gcloud resource-manager org-policies allow constraints/iam.workloadIdentityPoolProviders \
     https://sts.windows.net/AZURE_TENANT_ID --organization=ORGANIZATION_NUMBER

Sie können diese Befehle wiederholen, um die Föderation über zusätzliche Anbieter zuzulassen.

So blockieren Sie die Föderation über alle Anbieter:

  1. Erstellen Sie eine YAML-Datei mit folgendem Inhalt:

    constraint: constraints/iam.workloadIdentityPoolProviders
    listPolicy:
      allValues: DENY
    
  2. Übergeben Sie die Datei an den Befehl gcloud resource-manager org-policies set-policy:

    gcloud resource-manager org-policies set-policy FILE_NAME.yaml \
        --organization=ORGANIZATION_NUMBER
    

Erstellen von Dienstkontoschlüsseln einschränken

Mit einer Föderation der Workload Identity können Sie von außerhalb von Google Cloud auf Google Cloud-Ressourcen zugreifen, ohne einen Dienstkontoschlüssel verwenden zu müssen. Wenn Sie keine Dienstkontoschlüssel zur Authentifizierung verwenden, können Sie das Risiko reduzieren, indem Sie die Schlüsselerstellung deaktivieren.

Wenn Sie die Erstellung von Dienstkontoschlüsseln deaktivieren möchten, erzwingen Sie in der Organisationsrichtlinie für Ihre Organisation die boolesche Einschränkung iam.disableServiceAccountKeyCreation. Sie können auch die boolesche Einschränkung iam.disableServiceAccountKeyUpload erzwingen, um das Hochladen von öffentlichen Schlüsseln für Dienstkonten zu deaktivieren.

Sie können die Einschränkungen mit der Cloud Console oder dem gcloud-Tool aktivieren. Die folgenden Befehle des gcloud-Tools aktivieren beispielsweise beide Einschränkungen:

gcloud resource-manager org-policies enable-enforce \
    constraints/iam.disableServiceAccountKeyCreation \
    --organization=ORGANIZATION_NUMBER
gcloud resource-manager org-policies enable-enforce \
    constraints/iam.disableServiceAccountKeyUpload \
    --organization=ORGANIZATION_NUMBER

Nächste Schritte

Mehr über die Workload Identity-Föderation erfahren