Identitäten nach Domain einschränken

In Resource Manager steht eine Domaineinschränkung zur Verfügung, mit der Sie in Organisationsrichtlinien die Ressourcenfreigabe auf Basis von Domains beschränken können. Diese Einschränkung ermöglicht Ihnen, die Gruppe von Identitäten zu begrenzen, die in Richtlinien der Identitäts- und Zugriffsverwaltung verwendet werden dürfen.

In Organisationsrichtlinien lässt sich mit dieser Einschränkung die Ressourcenfreigabe auf eine bestimmte Gruppe von Domains in Google Workspace beschränken, wobei Ausnahmen pro Ordner oder Projekt gewährt werden können. Weitere Informationen zum Hinzufügen von Ausnahmen finden Sie unter Organisationsrichtlinie für ein Projekt überschreiben.

Die Domaineinschränkung gilt nicht rückwirkend. Sobald eine Domaineinschränkung festgelegt wurde, gilt diese für Änderungen der IAM-Richtlinien, die ab diesem Zeitpunkt vorgenommen werden, und nicht für vorherige Änderungen. Die Domaineinschränkung gilt für alle IAM-Richtlinienänderungen, einschließlich Änderungen, die ein Dienst-Agent als Reaktion auf eine andere Aktion vornimmt. Wenn Sie beispielsweise einen automatisierten Dienst haben, der BigQuery-Datasets importiert, nimmt ein BigQuery-Dienst-Agent Änderungen an der IAM-Richtlinie für das neu erstellte Dataset vor. Diese Aktion würde durch die Domaineinschränkung eingeschränkt und blockiert werden.

Betrachten Sie zum Beispiel zwei ähnliche Organisationen: beispielstore.com und altostrat.com. Sie haben einer Identität aus beispielstore.com eine IAM-Rolle in altostrat.com gewährt. Später haben Sie sich dazu entschlossen, Identitäten nach Domain einzuschränken, und eine Organisationsrichtlinie mit Domaineinschränkung in altostrat.com implementiert. In diesem Fall würden die bereits vorhandenen Identitäten von beispielstore.com den Zugriff auf altostrat.com nicht verlieren. Sie könnten jedoch ab diesem Punkt IAM-Rollen nur noch Identitäten aus der Domain altostrat.com zuweisen.

Die Domaineinschränkung basiert auf der Listeneinschränkung iam.allowedPolicyMemberDomains.

Wird diese Einschränkung für eine Google Workspace-Domain festgelegt, wirkt sie sich auf alle Identitäten unter dieser Domain aus. Dies gilt auch für Nutzerkonten, die in der Google Workspace-Konsole und nicht in der Google Cloud Console verwaltet werden.

Organisationsrichtlinie festlegen

Die Domaineinschränkung ist eine Art von Listeneinschränkung. Google Workspace-Kundennummern können der Liste allowed_values einer Domaineinschränkung hinzugefügt und daraus entfernt werden. Alle mit diesem Google Workspace-Konto verknüpften Domains sind von der Organisationsrichtlinie betroffen.

Sie müssen die Berechtigung haben, die Organisationsrichtlinien zu ändern, um diese Einschränkung festzulegen. Die Rolle orgpolicy.policyAdmin hat beispielsweise die Berechtigung zum Festlegen von Einschränkungen für Organisationsrichtlinien. Die Rolle resourcemanager.organizationAdmin ist berechtigt, einen Nutzer als Organisationsrichtlinienadministrator hinzuzufügen. Lesen Sie unter Einschränkungen verwenden, wie Richtlinien auf Organisationsebene verwaltet werden.

Console

So legen Sie eine Organisationsrichtlinie mit einer Domaineinschränkung fest:

  1. Öffnen Sie in der Cloud Console die Seite Organisationsrichtlinien.
    Zur Seite "Organisationsrichtlinien"
  2. Klicken Sie auf Auswählen.
  3. Wählen Sie die Organisation aus, für die Sie die Richtlinie festlegen möchten.
  4. Klicken Sie auf Domaineingeschränkte Freigabe.
  5. Klicken Sie auf Bearbeiten.
  6. Wählen Sie unter Gilt für die Option Anpassen aus.
  7. Wählen Sie unter Richtlinienwerte die Option Benutzerdefiniert.
  8. Geben Sie eine Google Workspace-Kundennummer in das Textfeld Richtlinienwert ein und drücken Sie die Eingabetaste. Auf diese Weise können mehrere IDs eingegeben werden.
  9. Klicken Sie auf Speichern. Es wird eine Benachrichtigung angezeigt, in der die Aktualisierung der Richtlinie bestätigt wird.

gcloud

Richtlinien können über das gcloud-Befehlszeilentool festgelegt werden. Führen Sie folgenden Befehl aus, um eine Richtlinie mit Domaineinschränkung zu erstellen:

gcloud resource-manager org-policies allow \
    --organization 'ORGANIZATION_ID' \
    iam.allowedPolicyMemberDomains 'DOMAIN_ID_1' \
    'DOMAIN_ID_2'

Wobei:

Weitere Informationen zur Verwendung von Einschränkungen in Organisationsrichtlinien finden Sie unter Einschränkungen verwenden.

Beispiel für eine Organisationsrichtlinie

Das folgende Code-Snippet zeigt eine Organisationsrichtlinie mit Domaineinschränkung:

resource: "organizations/842463781240"
policy {
  constraint: "constraints/iam.allowedPolicyMemberDomains"
  etag: "\a\005L\252\122\321\946\334"
  list_policy {
  allowed_values: "C03xgje4y"
  allowed_values: "C03g5e3bc"
  allowed_values: "C03t213bc"
  }
}

allowed_values sind Google Workspace-Kundennummern, z. B. C03xgje4y. Nur Identitäten einer Google Workspace-Domain aus der Liste von allowed_values werden in IAM-Richtlinien zugelassen, sobald diese Organisationsrichtlinie angewendet wurde. Nutzer und Gruppen von Google Workspace müssen Teil dieser Google Workspace-Domain sein und IAM-Dienstkonten müssen eine Organisationsressource sein, die mit der angegebenen Google Workspace-Domain verknüpft ist.

Wenn Sie beispielsweise eine Organisationsrichtlinie erstellt haben, die nur die Google Workspace-Kundennummer Ihres Unternehmens enthält, können ab diesem Punkt nur Hauptkonten dieser Domain zur IAM-Richtlinie hinzugefügt werden.

Beispiel für Fehlermeldung

Bei Verstoß gegen die Domaineinschränkung, d. h., wenn versucht wird, ein Hauptkonto hinzuzufügen, das nicht in der Liste der allowed_values enthalten ist, schlägt der Vorgang fehl und eine Fehlermeldung wird angezeigt.

gcloud

ERROR: (gcloud.projects.set-iam-policy) FAILED_PRECONDITION:
One or more users named in the policy do not belong to a permitted customer.

Console

Screenshot der Console

Google Workspace-Kundennummer abrufen

Die von der Domaineinschränkung verwendete Google Workspace-Kundennummer kann auf zwei Arten abgerufen werden:

gcloud

Mit dem Befehl gcloud orgations list können Sie alle Organisationen auflisten lassen, für die Sie die Berechtigung resourcemanager.organizations.get haben:

gcloud organizations list

Dieser Befehl gibt DISPLAY_NAME, ID (Organisations-ID) und DIRECTORY_CUSTOMER_ID zurück. Die Google Workspace-Kundennummer ist die DIRECTORY_CUSTOMER_ID.

API

Die Google Workspace Directory API kann zum Abrufen einer Google Workspace-Kundennummer verwendet werden.

Wenn Sie als Google Workspace-Administrator angemeldet sind, können Sie die Dokumentation zur Customers: get API-Methode aufrufen und auf Ausführen klicken. Nach der Autorisierung wird in der Antwort Ihre Kundennummer angezeigt.

Alternativ können Sie einen API-Client verwenden:

  1. Fordern Sie ein OAuth-Zugriffstoken für den Bereich https://www.googleapis.com/auth/admin.directory.customer.readonly an.
  2. Führen Sie den folgenden Befehl aus, um die Google Workspace Directory API abzufragen:

    curl -# -X GET "https://www.googleapis.com/admin/directory/v1/customers/customerKey" \
    -H "Authorization: Bearer $access_token" -H "Content-Type: application/json"
    

Dieser Befehl gibt eine JSON-Antwort mit den Kundeninformationen zurück. Die Google Workspace-Kundennummer ist die id.

Subdomains einschränken

Bei der Domaineinschränkung wird der Zugriff auf Domains begrenzt, die einer angegebenen Google Workspace-Kunden-ID zugeordnet sind. Jedes Google Workspace-Konto hat genau eine primäre Domain und keine oder mehrere sekundäre Domains. Alle Domains, die der Google Workspace-Kundennummer zugeordnet sind, unterliegen der Einschränkung.

Durch das Anwenden der Domaineinschränkung auf eine Ressource können Sie die primäre Domain und alle sekundären Domains, die auf diese Ressource und alle ihre untergeordneten Elemente in der Ressourcenhierarchie zugreifen können, steuern.

Beispiele für gängige Kombinationen aus Google Workspace-Domain und Subdomain finden Sie in der folgenden Tabelle:

Primäre Domain Subdomain Domaineinschränkung Ist user@sub.domain.com zugelassen?
domain.com Keine Zulassen: domain.com Nein
domain.com sub.domain.com Zulassen: domain.com Ja
domain.com sub.domain.com Zulassen: sub.domain.com Ja
sub.domain.com domain.com Zulassen: sub.domain.com Ja
sub.domain.com Keine Zulassen: sub.domain.com Ja

Damit der Zugriff von Domaineinschränkungen von zwei verschiedenen Domains unterschieden werden kann, muss jede Domain mit einem anderen Google Workspace-Konto verknüpft sein. Jedes Google Workspace-Konto ist einem Organisationsknoten zugeordnet und kann eigene Organisationsrichtlinien anwenden. Dadurch können Sie domain.com mit einem Google Workspace-Konto und sub.domain.com mit einem anderen verknüpfen, um die Zugriffssteuerung zu verfeinern. Weitere Informationen finden Sie unter Mehrere Organisationen verwalten.

Bekannte Fehler beheben

Organisationsrichtlinien sind nicht rückwirkend. Wenn Sie eine Änderung an Ihrer Ressourcenhierarchie erzwingen möchten, die gegen eine geltende Einschränkung verstößt, können Sie die Organisationsrichtlinie deaktivieren, die Änderung vornehmen und dann die Organisationsrichtlinie wieder aktivieren.

In den folgenden Abschnitten werden bekannte Probleme mit Diensten beschrieben, die auftreten können, wenn diese Einschränkung erzwungen wird.

Freigabe öffentlicher Daten

Einige Google Cloud-Produkte, wie BigQuery, Cloud Functions, Cloud Run, Cloud Storage und Pub/Sub, unterstützen die Freigabe öffentlicher Daten. Wird in einer Organisationsrichtlinie eine Freigabe mit Domaineinschränkung durchgesetzt, ist die Freigabe öffentlicher Daten nicht mehr möglich.

Wenn Sie Daten öffentlich freigeben möchten, deaktivieren Sie vorübergehend die Freigabe mit Domaineinschränkung der Projektressource, auf der sich die freizugebenden Daten befinden. Nachdem Sie die Ressource öffentlich freigegeben haben, können Sie die Domaineinschränkung wieder aktivieren.

BigQuery-Logsenke für ein Rechnungskonto

Das von der BigQuery-Logsenke für Rechnungskonten verwendete Dienstkonto (Format: b*@*.iam.gserviceaccount.com) wird als extern behandelt und von der auf die Domain beschränkten Freigabeeinschränkung in einer Organisationsrichtlinie blockiert. So weisen Sie diesem Dienstkonto eine Rolle für ein BigQuery-Dataset in einem Projekt zu, für das die Domaineinschränkung gilt:

  1. Entfernen Sie die Organisationsrichtlinie, die die Domaineinschränkung enthält.

    1. Wenn die Einschränkung in einer Organisationsrichtlinie sowohl für diese Organisation als auch für das Projekt erzwungen wird, legen Sie die Organisationsrichtlinie mit der Domaineinschränkung für das Projekt so fest, dass alle Werte zugelassen werden.

    2. Wenn diese Einschränkung in einer Organisationsrichtlinie für die übergeordnete Organisation erzwungen und vom Projekt übernommen wird, fügen Sie die Organisationsrichtlinie mit der Domaineinschränkung dem Projekt hinzu, wobei alle Werte zulässig sind.

  2. Gewähren Sie dem entsprechenden Dienstkonto (Format: b*@*.iam.gserviceaccount.com) die BigQuery-Rolle, die während des Erstellens der Senke angegeben wird.

  3. Machen Sie die Änderungen an der Organisationsrichtlinie mit der Domaineinschränkung für das Projekt rückgängig.

Dienstkonto für den Cloud-Abrechnungsexport

Die Aktivierung des Abrechnungsexports zu einem Bucket schlägt wahrscheinlich fehl, wenn diese Einschränkung aktiv ist. Verwenden Sie diese Einschränkung nicht für Buckets, die für den Abrechnungsexport genutzt werden.

Die E-Mail-Adresse des Dienstkontos für den Cloud-Abrechnungsexport lautet: 509219875288-kscf0cheafmf4f6tp1auij5me8qakbin@developer.gserviceaccount.com

Logging für Speicherzugriff aktivieren

Sofern sie aktiviert ist, sperrt die Domaineinschränkung alle Domains, die in der Organisationsrichtlinie nicht ausdrücklich zugelassen sind. Dadurch wird auch der Zugriff auf Google-Dienstkonten verhindert. So richten Sie das Logging für den Speicherzugriff für einen Cloud Storage-Bucket ein, für den die Domaineinschränkung gilt:

  1. Entfernen Sie die Organisationsrichtlinie, die die Domaineinschränkung enthält.

  2. Gewähren Sie cloud-storage-analytics@google.com WRITE-Zugriff auf diesen Bucket.

  3. Implementieren Sie die Organisationsrichtlinie mit der Domaineinschränkung noch einmal.

Firebase API aktivieren

Wenn diese Option aktiviert ist, werden durch die Domaineinschränkung die Dienstkonten blockiert, die in der Organisationsrichtlinie nicht zulässig sind. Dadurch ist es nicht möglich, die Firebase API zu aktivieren. Dazu sind bei der Aktivierung der API externe Dienstkonten erforderlich. Nach dem Aktivieren der API können Sie die Domaineinschränkung sicher erzwingen, ohne die Funktion der Firebase API zu beeinträchtigen. So aktivieren Sie die Firebase API:

  1. Entfernen Sie die Organisationsrichtlinie, die die Domaineinschränkung enthält.

  2. Aktivieren Sie die Firebase Management API.

  3. Implementieren Sie die Organisationsrichtlinie mit der Domaineinschränkung noch einmal.

Google Groups

Google-Gruppen, die innerhalb einer zugelassenen Domain erstellt wurden, können immer Rollen in der IAM-Richtlinie zugewiesen werden, wenn die Domaineinschränkung erzwungen wird, auch wenn die Gruppe Mitglieder außerhalb dieser Domain enthält.

Damit Projektadministratoren die Domaineinschränkung nicht umgehen können, sollte der Google Workspace-Administrator dafür sorgen, dass Gruppeninhaber Mitgliedern von außerhalb der Domain keinen Zugriff auf den Administratorbereich in Google Workspace gewähren können.

Kontozugriff erzwingen

Wenn Sie den Kontozugriff für ein Projekt unter Verletzung von Domaineinschränkungen erzwingen müssen, gehen Sie so vor:

  1. Entfernen Sie die Organisationsrichtlinie, die die Domaineinschränkung enthält.

  2. Gewähren Sie Kontozugriff auf das Projekt.

  3. Implementieren Sie die Organisationsrichtlinie mit der Domaineinschränkung noch einmal.

Alternativ können Sie einer Google-Gruppe, die die entsprechenden Dienstkonten enthält, Zugriff gewähren:

  1. Erstellen Sie eine Google-Gruppe innerhalb der zugelassenen Domain.

  2. Im Administratorbereich von Google Workspace können Sie die Domaineinschränkung für diese Gruppe deaktivieren.

  3. Fügen Sie der Gruppe das Dienstkonto hinzu.

  4. Gewähren Sie mithilfe der IAM-Richtlinie Zugriff auf die Google-Gruppe.