Auf dieser Seite wird beschrieben, wie Sie Ihre vorhandenen Zugriffsberechtigungen verwalten, mit denen festgelegt wird, wie Zugriffsrichtlinien auf Ihre Nutzergruppen angewendet werden. Sie können diese Bindungen nach Bedarf ansehen, ändern und löschen. Mit Zugriffsbindungen wird festgelegt, wie Zugriffsebenen und Sitzungssteuerungen auf eine Nutzergruppe angewendet werden.
Informationen zum Erstellen von Zugriffsbinding und weitere Details zu Zugriffsebenen und Sitzungssteuerungen finden Sie unter Richtlinien mit Zugriffsbinding auf Nutzergruppen anwenden.
Zugriffsb Bindungen ansehen
Nachdem die Zugriffsbindungen für eine Gruppe von Nutzern erstellt wurden, wird der Zugriff auf dieGoogle Cloud Console und die Google Cloud APIs gemäß der Erfüllung der gebundenen Zugriffsebene gesteuert.
Sie können die Details der von Ihnen erstellten Zugriffsbindung aufrufen, sie bearbeiten oder löschen.
Console
Rufen Sie in der Google Cloud Console die Seite Access Context Manager auf.
Wählen Sie ein Projekt aus, wenn Sie dazu aufgefordert werden. Die Liste der Zugriffsbindungen wird auf der Seite „Access Context Manager“ aufgeführt.
gcloud
Führen Sie den folgenden Befehl aus, um alle Zugriffsbindungen aufzurufen:
gcloud access-context-manager cloud-bindings list \ --organization ORG_IDORG_ID: Ihre Organisations-ID. Wenn das Attribut
access-context-manager/organizationnicht festgelegt wurde, ersetzen SieORG_IDim optionalen Flag--organizationdurch die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdminverwendet haben.Führen Sie den folgenden Befehl aus, um die Details einer Zugriffsbindung aufzurufen:
gcloud access-context-manager cloud-bindings describe \ --binding=BINDING_IDBINDING_IDist die ID der Zugriffsbindung oder die vollqualifizierte Kennzeichnung für die Zugriffsbindung.
API
Alle Zugriffsbindungen ansehen:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
-
ORG_IDist die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdminverwendet haben. Wenn das Attributaccess-context-manager/organizationnicht festgelegt wurde, ersetzen SieORG_IDim optionalen Flag--organizationdurch die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdminverwendet haben.
HTTP-Methode und URL:
GET https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand ContentSie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": string, "groupKey": string, "accessLevels": [ string ] "dryRunAccessLevels": [ string ] }-
Details einer Zugriffsbindung ansehen:
HTTP-Methode und URL:
GET https://accesscontextmanager.googleapis.com/v1/BINDING_ID
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/BINDING_ID"PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/BINDING_ID" | Select-Object -Expand ContentSie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Zugriffsbindung aktualisieren
Sie können eine Zugriffsbindung aktualisieren, um Folgendes zu tun:
- Sie können Richtlinien für Anwendungen hinzufügen, entfernen oder ändern.
- Ändern Sie die Zugriffsebenen für eine Anwendung in einer Nutzergruppe.
- Fügen Sie eine neue Probelauf-Zugriffsebene hinzu oder stufen Sie eine vorhandene auf eine Live-Zugriffsebene hoch.
Console
Rufen Sie in der Google Cloud Console die Seite Access Context Manager auf.
Wählen Sie ein Projekt aus, wenn Sie dazu aufgefordert werden.
Wählen Sie auf der Seite „Access Context Manager“ eine Zugriffsbindung aus und klicken Sie dann auf Bearbeiten, um sie zu aktualisieren.
Sie können Zugriffsbindungen mit Zugriffsebenen für Probeläufe oder Sitzungssteuerungen in der Google Cloud -Konsole nicht aktualisieren.
gcloud
Erstellen Sie eine YAML-Bindungsdatei.
gcloud access-context-manager cloud-bindings update --binding ACCESS_BINDING --binding-file BINDING_FILE_PATH [ --level DEFAULT_ACCESS_LEVEL ] [ --dry-run-level DEFAULT_DRY_RUN_ACCESS_LEVEL ] [ --session-length=DEFAULT_SESSION_LENGTH ] [ --session-reauth-method=DEFAULT_SESSION_REAUTH_METHOD ]Ersetzen Sie Folgendes:
-
ACCESS_BINDINGhat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME. -
BINDING_FILE_PATH: Der Pfad zur YAML-Datei, die das Schema für die Zugriffsbindung enthält.
In der Bindungsdatei wird nur
scopedAccessSettingsunterstützt. -
DEFAULT_ACCESS_LEVEL: Der optionale Name der Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME. Ersetzen SiePOLICY_IDdurch die ID der Zugriffsrichtlinie undACCESS_LEVEL_NAMEdurch den Namen der Zugriffsebene. - DEFAULT_DRY_RUN_ACCESS_LEVEL_2: Ein optionaler Name der Zugriffsebene im Format „accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME“. Fügen Sie dieses Flag hinzu, um die angegebene Zugriffsebene für den Probelauf standardmäßig auf alle Anwendungen anzuwenden, sofern sie nicht in der YAML-Datei angegeben sind.
-
DEFAULT_SESSION_LENGTH: Die optionale Sitzungsdauer im ISO 8601-Format, z. B.
30mfür 30 Minuten oder2hfür 2 Stunden. -
DEFAULT_SESSION_REAUTH_METHOD: Die optionale Methode, mit der Nutzer aufgefordert werden, ihre Identität noch einmal zu bestätigen. Sie muss eine der folgenden sein:
LOGIN: Die Standardanmeldung wird angewendet. Diese kann die MFA oder andere von Workspace definierte Faktoren umfassen.PASSWORD: Es ist nur ein Passwort erforderlich, auch wenn andere Faktoren definiert sind. Wenn Passwörter über einen externen IdP verwaltet werden, werden Nutzer an den IdP weitergeleitet. Wenn die IdP-Sitzung aktiv ist, werden Nutzer implizit neu authentifiziert. Wenn der IdP nicht aktiv ist, müssen sich Nutzer über den IdP anmelden.SECURITY_KEY: Hardware-Sicherheitsschlüssel erforderlich.
Zusammenwirken der Argumente
--levelund--binding-file- Wenn Sie nur
--binding-fileverwenden, werden die Richtlinien nur auf die Anwendungen in der Datei angewendet. - Wenn Sie nur
--levelverwenden, gilt die Zugriffsebene für alle Anwendungen. - Wenn Sie beide verwenden, werden die Regeln kombiniert. Der Wert
--levelgilt für alle Anwendungen, während die Richtlinien in der YAML-Datei, die durch--binding-fileangegeben wird, nur für die in der Datei definierten Anwendungen gelten.
Mit Sitzungssteuerelementen arbeiten
- Wenn Sie Standardeinstellungen für die Sitzungssteuerung für alle Anwendungen festlegen möchten, verwenden Sie
--session-lengthund--session-reauth-method. - Wenn Sie auch Sitzungssteuerungen in der YAML-Datei definieren, überschreiben diese die Standardeinstellungen für die jeweiligen Anwendungen.
- Sie müssen
--session-lengthund--session-reauth-methodzusammen verwenden.
Wenn Sie eine Standardzugriffsebene oder eine Standardzugriffsebene für den Probebetrieb entfernen möchten, geben Sie einen leeren String an, z. B.
--level=oder--dry-run-level=. Wenn diese Argumente nicht angegeben werden, nimmt der Befehlupdatekeine Änderungen vor.Wenn Sie eine Sitzungssteuerung entfernen möchten, legen Sie
--session-length=0fest.-
API
Erstellen Sie einen JSON-Text.
{ "accessLevels": [ "DEFAULT_ACCESS_LEVEL" ], "scopedAccessSettings": [ { "scope": { "clientScope": { "restrictedClientApplication": { "clientId": "CLIENT_ID" } } }, "activeSettings": { "accessLevels": [ "ACCESS_LEVEL_A" ], "sessionSettings": [ { "sessionLength": "SESSION_LENGTH", "sessionReauthMethod": "SESSION_REAUTH_METHOD", "sessionLengthEnabled": true } ] } }, { "scope": { "clientScope": { "restrictedClientApplication": { "name": "CLIENT_NAME" } }, "activeSettings": { "accessLevels": [ "ACCESS_LEVEL_C" ] } } } ] }Ersetzen Sie Folgendes:
-
DEFAULT_ACCESS_LEVEL: Der optionale Name der Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME. Ersetzen SiePOLICY_IDdurch die ID der Zugriffsrichtlinie undACCESS_LEVEL_NAMEdurch den Namen der Zugriffsebene. - CLIENT_ID: Die OAuth-Client-ID. Sie müssen
clientIdverwenden, wenn eine AnwendungsessionSettingsenthält. - ACCESS_LEVEL_A: Ein Name der Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME. - SESSION_LENGTH: Die Sitzungsdauer im ISO 8601-Format, z. B.
30mfür 30 Minuten oder2hfür 2 Stunden. SESSION_REAUTH_METHOD: Die optionale Methode, mit der Nutzer aufgefordert werden, ihre Identität noch einmal zu bestätigen. Sie muss eine der folgenden sein:
LOGIN: Die Standardanmeldung wird angewendet. Diese kann die MFA oder andere von Workspace definierte Faktoren umfassen.PASSWORD: Nur ein Passwort ist erforderlich, auch wenn andere Faktoren definiert sind. Wenn Passwörter über einen externen IdP verwaltet werden, werden Nutzer an den IdP weitergeleitet. Wenn die IdP-Sitzung aktiv ist, werden Nutzer implizit neu authentifiziert. Wenn der IdP nicht aktiv ist, müssen sich Nutzer über den IdP anmelden.SECURITY_KEY: Hardware-Sicherheitsschlüssel erforderlich.
CLIENT_NAME: Der Clientname. Wenn die Anwendung
sessionSettingsenthält, können Sie den Clientnamen nicht verwenden. Verwenden Sie stattdessen die OAuth-Client-ID.ACCESS_LEVEL_C: Ein Name der Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME.
-
DEFAULT_ACCESS_LEVEL: Der optionale Name der Zugriffsebene im Format
Senden Sie die PATCH-Anfrage.
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING?fieldMask=FIELDMASKErsetzen Sie Folgendes:
-
ACCESS_BINDINGhat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME. - FIELD_MASK: Eine erforderliche, durch Kommas getrennte Liste der Felder, die Sie aktualisieren möchten. Damit wird der API mitgeteilt, welche Teile der Zugriffsbindung geändert werden sollen.
fieldMasksollte die JSON-Schlüssel der obersten Ebene im Anfragetext enthalten, die Sie aktualisieren möchten. Diese könnenaccessLevels,dryRunAccessLevelsundscopedAccessSettingsenthalten.Bei Erfolg sollten Sie eine Darstellung des JSON-Objekts erhalten. Wenn ein Problem auftritt, erhalten Sie eine Fehlermeldung.
-
Zugriffsberechtigungen löschen
Console
Rufen Sie in der Google Cloud Console die Seite Access Context Manager auf.
Wählen Sie ein Projekt aus, wenn Sie dazu aufgefordert werden.
Wählen Sie auf der Seite „Access Context Manager“ eine Zugriffsbindung aus und klicken Sie dann auf Löschen.
gcloud
gcloud access-context-manager cloud-bindings delete \
--binding ACCESS_BINDING
Ersetzen Sie Folgendes:
-
ACCESS_BINDINGhat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME. -
ACCESS_BINDING_NAMEist der eindeutige String, der für die Kennzeichnungnamebeim Erstellen der Zugriffsbindung zurückgegeben wurde.
API
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
-
ACCESS_BINDING_NAMEist der eindeutige String, der für die Kennzeichnungnamebeim Erstellen der Zugriffsbindung zurückgegeben wurde.
HTTP-Methode und URL:
DELETE https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME
Senden Sie die Anfrage mithilfe einer der folgenden Optionen:
curl
Führen Sie folgenden Befehl aus:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME"
PowerShell
Führen Sie folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME" | Select-Object -Expand Content
Sie sollten einen erfolgreichen Statuscode (2xx) und eine leere Antwort erhalten.