Auf dieser Seite wird beschrieben, wie Sie vorhandene Zugriffsbindungen verwalten, mit denen festgelegt wird, wie Zugriffsrichtlinien auf Ihre Nutzergruppen angewendet werden. Sie können diese Bindungen nach Bedarf aufrufen, ändern und löschen. Mit Zugriffsbindungen wird festgelegt, wie Zugriffsebenen und Sitzungssteuerungen auf eine Nutzergruppe angewendet werden.
Informationen zum Erstellen von Zugriffsbindungen sowie weitere Details zu Zugriffsebenen und Sitzungssteuerungen finden Sie unter Richtlinien auf Nutzergruppen mit Zugriffsbindungen anwenden.
Zugriffsbindungen ansehen
Nachdem die Zugriffsbindungen für eine Gruppe von Nutzern erstellt wurden, wird der Zugriff auf dieGoogle Cloud -Konsole 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 finden Sie auf der Seite „Access Context Manager“.
gcloud
Führen Sie den folgenden Befehl aus, um alle Zugriffsbindungen aufzurufen:
gcloud access-context-manager cloud-bindings list \ --organization ORG_ID
ORG_ID: Ihre Organisations-ID. Wenn die Property
access-context-manager/organization
nicht festgelegt wurde, ersetzen SieORG_ID
im optionalen Flag--organization
durch die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdmin
verwendet haben.Führen Sie den folgenden Befehl aus, um die Details einer Zugriffsbindung aufzurufen:
gcloud access-context-manager cloud-bindings describe \ --binding=BINDING_ID
BINDING_ID
ist die ID der Zugriffsbindung oder die voll qualifizierte Kennzeichnung für die Zugriffsbindung.
API
So rufen Sie alle Zugriffsbindungen auf:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
-
ORG_ID
ist die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdmin
verwendet haben. Wenn die Propertyaccess-context-manager/organization
nicht festgelegt wurde, ersetzen SieORG_ID
im optionalen Flag--organization
durch die ID der Organisation, die Sie beim Erstellen der RolleGcpAccessAdmin
verwendet 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 ] }
-
So rufen Sie die Details einer Zugriffsbindung auf:
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 Anwendungen hinzufügen, entfernen oder ändern, für die eine Richtlinie gilt.
- Zugriffsebenen für eine Anwendung innerhalb einer Nutzergruppe ändern
- Fügen Sie eine neue Zugriffsebene für den Testzeitraum hinzu oder stufen Sie eine vorhandene Zugriffsebene in eine Live-Ebene 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.
In der Google Cloud -Console können Sie keine Zugriffsbindungen mit Zugriffsebenen für den Trockenlauf oder Sitzungssteuerungen 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_BINDING
hat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
BINDING_FILE_PATH: Der Pfad zur YAML-Datei, die das Zugriffsbindungsschema enthält.
Die Bindungsdatei unterstützt nur
scopedAccessSettings
. -
DEFAULT_ACCESS_LEVEL: Der optionale Name der Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME
. Ersetzen SiePOLICY_ID
durch die ID der Zugriffsrichtlinie undACCESS_LEVEL_NAME
durch den Namen der Zugriffsebene. - DEFAULT_DRY_RUN_ACCESS_LEVEL_2: 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 Trockenlauf standardmäßig auf alle Anwendungen anzuwenden, sofern sie nicht in der YAML-Datei angegeben sind.
-
DEFAULT_SESSION_LENGTH: Die optionale Sitzungsdauer im ISO 8601-Dauerformat, z. B.
30m
für 30 Minuten oder2h
für zwei 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 anwenden, die MFA oder andere von Workspace definierte Faktoren umfassen kann.PASSWORD
: 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 noch einmal authentifiziert. Wenn der IdP nicht aktiv ist, müssen sich Nutzer über den IdP anmelden.SECURITY_KEY
: Hardware-Sicherheitsschlüssel erforderlich machen.
Zusammenspiel der Argumente
--level
und--binding-file
- Wenn Sie nur
--binding-file
verwenden, werden die Richtlinien nur auf die Anwendungen in der Datei angewendet. - Wenn Sie nur
--level
verwenden, gilt die Zugriffsebene für alle Anwendungen. - Wenn Sie beide verwenden, haben die Regeln in der YAML-Datei Vorrang. Der Wert
--level
gilt für alle Anwendungen, die nicht in der Datei aufgeführt sind.
Sitzungssteuerung verwenden
- Verwenden Sie
--session-length
und--session-reauth-method
, um Standardeinstellungen für die Sitzungssteuerung für alle Anwendungen festzulegen. - Wenn Sie auch Sitzungssteuerungen in der YAML-Datei definieren, werden die Standardeinstellungen für diese bestimmten Anwendungen durch diese Sitzungssteuerungen überschrieben.
- Sie müssen
--session-length
und--session-reauth-method
zusammen verwenden.
Wenn Sie eine Standardzugriffsebene oder eine Standardzugriffsebene für den Trockenlauf entfernen möchten, geben Sie einen leeren String wie
--level=
oder--dry-run-level=
an. Wenn diese Argumente nicht angegeben werden, werden durch den Befehlupdate
keine Änderungen vorgenommen.Wenn Sie eine Sitzungssteuerung entfernen möchten, setzen Sie
--session-length=0
.-
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_ID
durch die ID der Zugriffsrichtlinie undACCESS_LEVEL_NAME
durch den Namen der Zugriffsebene. - CLIENT_ID: Die OAuth-Client-ID. Sie müssen
clientId
verwenden, wenn eine AnwendungsessionSettings
enthält. - ACCESS_LEVEL_A: Ein Name für die Zugriffsebene im Format
accessPolicies/POLICY_ID/accessLevels/ACCESS_LEVEL_NAME
. - SESSION_LENGTH: Die Sitzungsdauer im ISO 8601-Dauerformat, z. B.
30m
für 30 Minuten oder2h
für zwei 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 anwenden, die MFA oder andere von Workspace definierte Faktoren umfassen kann.PASSWORD
: Es wird nur ein Passwort benötigt, 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 noch einmal authentifiziert. Wenn der IdP nicht aktiv ist, müssen sich Nutzer über den IdP anmelden.SECURITY_KEY
: Hardware-Sicherheitsschlüssel erforderlich machen.
CLIENT_NAME: Der Name des Kunden. Wenn die Anwendung
sessionSettings
enthält, können Sie den Clientnamen nicht verwenden. Verwenden Sie stattdessen die OAuth-Client-ID.ACCESS_LEVEL_C: Ein Name für die 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=FIELDMASK
Ersetzen Sie Folgendes:
-
ACCESS_BINDING
hat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. - FIELD_MASK: Eine erforderliche, durch Kommas getrennte Liste der Felder, die Sie aktualisieren möchten. So wird der API mitgeteilt, welche Teile der Zugriffsbindung geändert werden sollen.
fieldMask
sollte die JSON-Schlüssel der obersten Ebene im Anfragetext enthalten, die Sie aktualisieren möchten. Dazu gehörenaccessLevels
,dryRunAccessLevels
undscopedAccessSettings
.Bei Erfolg sollten Sie eine Darstellung des JSON-Objekts erhalten. Falls ein Problem auftritt, erhalten Sie eine Fehlermeldung.
-
Zugriffsbindungen 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_BINDING
hat das Formatorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ACCESS_BINDING_NAME
ist der eindeutige String, der für die Kennungname
beim Erstellen der Zugriffsbindung zurückgegeben wurde.
API
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
-
ACCESS_BINDING_NAME
ist der eindeutige String, der für die Kennungname
zurückgegeben wurde, als die Zugriffsbindung erstellt 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.