Auf dieser Seite wird erläutert, wie Sie den zertifikatsbasierten Zugriff (CBA) mit Richtlinien für den kontextsensitiven Zugriff, die auf einer Nutzergruppe basieren.
Sie können den Zugriff auf alle Google Cloud-Dienste einschränken, indem Sie eine CBA-Zugriffsebene für eine Nutzergruppe festlegen, für die Sie den Zugriff einschränken möchten. Dieses Die Einschränkung gilt für alle Clientanwendungen, die die APIs Zu den Anwendungen gehören von Google entwickelte eigene Anwendungen, wie die Google Cloud Console und die Google Cloud CLI sowie Drittanbieteranwendungen. Optional können Sie die Einschränkungen auf bestimmte Client-Anwendungen oder bestimmte Apps ausnehmen.
Hinweise
Sie müssen eine CBA-Zugriffsebene erstellt haben. für die Zertifikate zur Bestimmung des Zugriffs auf Ressourcen erforderlich sind.
Eine Nutzergruppe erstellen
Erstellen Sie eine Nutzergruppe mit den Mitglieder, denen basierend auf der CBA-Zugriffsebene Zugriff gewährt werden soll.
Rolle „Administrator für Cloud-Zugriffsbindungen“ zuweisen
Weisen Sie den Cloud Access Binding Admin (Administrator für Cloud-Zugriffsbindungen) zu. Rolle für die Nutzergruppe zu.
Achten Sie darauf, dass Sie die erforderlichen Berechtigungen zum Hinzufügen haben IAM-Berechtigungen auf Organisationsebene. Sie benötigen mindestens den Administrator der Organisation und die Rollen Cloud Access Binding Admin.
Console
Rufen Sie in der Console die Seite IAM auf.
Klicken Sie auf dem Tab Berechtigungen auf Zugriff gewähren und konfigurieren Sie Folgendes:
- Neue Hauptkonten: Geben Sie die Gruppe an, der Sie das Rolle.
- Wählen Sie bei der Option Rolle auswählen die Option Access Context Manager > Administrator für Cloud-Zugriffsbindungen:
- Klicken Sie auf Speichern.
gcloud
Anmelden:
gcloud auth login
Weisen Sie die Rolle
GcpAccessAdmin
mit folgendem Befehl zu:gcloud organizations add-iam-policy-binding ORG_ID \ --member=user:EMAIL \ --role=roles/accesscontextmanager.gcpAccessAdmin
ORG_ID
ist die ID Ihrer Organisation. Wenn Sie Ihre Organisations-ID noch nicht haben, können Sie sie mit dem folgenden Befehl ermitteln:gcloud organizations list
EMAIL
ist die E-Mail-Adresse der Person oder Gruppe, der Sie die Rolle zuweisen möchten.
CBA-Zugriffsebene an eine Nutzergruppe binden
Bei dieser Bindungsoption gilt die CBA-Zugriffsebene für alle Kunden, für die von Ihnen angegebene Gruppe von Nutzenden.
Rufen Sie in der Konsole die Seite Chrome Enterprise Premium auf.
<ph type="x-smartling-placeholder"></ph> Zu Chrome Enterprise Premium
Wählen Sie eine Organisation aus und klicken Sie dann auf Auswählen.
Klicken Sie auf Zugriff verwalten, um die Nutzergruppen auszuwählen, die Zugriff erhalten sollen.
Klicken Sie auf Hinzufügen und konfigurieren Sie Folgendes:
- Mitgliedergruppen: Geben Sie die Gruppe an, auf die Sie Zugriff gewähren möchten. Ich kann nur Gruppen auswählen, die noch nicht an eine Zugriffsebene gebunden sind.
- Zugriffsebenen auswählen: Wählen Sie die CBA-Zugriffsebene aus, die auf die Gruppe angewendet werden soll.
- Klicken Sie auf Speichern.
CBA-Zugriffsebene an eine Nutzergruppe und bestimmte Anwendungen binden
In einigen Anwendungsfällen, z. B. Anwendungen, die Clientzertifikate unterstützen, die CBA-Zugriffsebene an eine Nutzergruppe zu binden, breit gefasst sind. Sie können diese Option verwenden, um CBA-Zugriffsebenen auf Anwendungen anzuwenden, die unterstützen Clientzertifikate.
Im folgenden Beispiel wird eine CBA-Zugriffsebene an die Google Cloud Console gebunden. die gcloud CLI und die OAuth-Anwendung eines Nutzers.
Melden Sie sich bei der gcloud CLI an.
$ gcloud auth application-default login
Erstellen Sie eine
policy_file.json
-Datei.Du kannst Anwendungen anhand ihrer OAuth-Client-ID angeben. Um Google anzugeben den Namen der Anwendung, z. B.
Cloud Console
für die Google Cloud Console Nur die Google Cloud Console und das Google Cloud SDK Google-Anwendungen werden unterstützt.{ "groupKey": "{GROUP_KEY}", "restricted_client_applications": [ {"name": "Cloud Console"}, {"name": "Google Cloud SDK"}, {"client_id": "{CLIENT_ID}"} ], "accessLevels": [ "{LEVEL}" ], }
Erstellen Sie die CBA-Zugriffsebenenbindung.
curl -X POST \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @policy_file.json \ https://accesscontextmanager.googleapis.com/v1/organizations/ORG-ID/gcpUserAccessBindings
Dabei ist PROJECT_ID die Google Cloud-Projekt-ID und ORG-ID ist Ihre Organisations-ID.
(Optional) Aktualisieren Sie eine vorhandene Bindung der Zugriffsebene.
$ curl -X PATCH \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @policy_file.json \ https://accesscontextmanager.googleapis.com/v1/POLICY_NAME?update_mask=restricted_client_applications
Dabei ist PROJECT_ID die Google Cloud-Projekt-ID und POLICY_NAME ist der Name Ihrer Zugriffsrichtlinie.
Anwendung von einer Bindung ausnehmen
Eine andere Möglichkeit, eine CBA-Zugriffsebene anzuwenden, ohne Clientanwendungen zu blockieren die keine Clientzertifikate unterstützen, besteht darin, diese Anwendungen vom .
Bei den folgenden Schritten wird davon ausgegangen, dass Sie hat eine CBA-Zugriffsebene erstellt für die Zertifikate zur Bestimmung des Zugriffs auf Ressourcen erforderlich sind.
Erstellen Sie mit einer der folgenden Methoden eine Ausnahmezugriffsebene.
- Benutzerdefinierte Zugriffsebene:
Geben Sie in der Bedingung des CEL-Ausdrucks
true
als Wert an. - Grundlegende Zugriffsebene:
Erstellen:
IP-Bereichsbasierte Zugriffsebene
und geben Sie
0.0.0.0/0
als Wert für IP-Subnetzwerke an.
- Benutzerdefinierte Zugriffsebene:
Geben Sie in der Bedingung des CEL-Ausdrucks
Erstellen Sie eine
exemption_file.json
-Datei.Sie müssen eine Gruppe auswählen, die sich von der im Option CBA-Zugriffsebene an Nutzergruppe binden, da Sie nur eine Bindung auf eine Gruppe anwenden können.
{ "groupKey": "{GROUP_KEY}", "restricted_client_applications": [ {"client_id": "{CLIENT_ID}"} ], "accessLevels": [ "{LEVEL}" ], }
Erstellen Sie die Ausnahmebindungsrichtlinie.
$ curl -X POST \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @exemption_file.json \ https://accesscontextmanager.googleapis.com/v1/organizations/ORG-ID/gcpUserAccessBindings
Dabei ist PROJECT_ID die Google Cloud-Projekt-ID und ORG-ID ist Ihre Organisations-ID.