Zugriffsebenen verwalten

Auf dieser Seite wird beschrieben, wie Sie vorhandene Zugriffsebenen verwalten können. Sie haben folgende Möglichkeiten:

Hinweis

  • Legen Sie Ihre Standardzugriffsrichtlinie fest, um die Google Cloud CLI zu verwenden.

    – oder –

    Rufen Sie den Namen Ihrer Richtlinie ab. Der Richtlinienname ist für Befehle erforderlich, die die gcloud CLI verwenden und API-Aufrufe ausführen. Wenn Sie eine Standardzugriffsrichtlinie festlegen, müssen Sie die Richtlinie für die gcloud CLI nicht angeben.

  • Sie benötigen eine IAM-Rolle (Identity and Access Management) auf Organisationsebene, mit der Sie Zugriffsebenen verwalten können. Bitten Sie Ihren Administrator, Ihnen eine der folgenden Rollen oder eine benutzerdefinierte Rolle mit denselben Berechtigungen zuzuweisen:

Zugriffsebenen auflisten

Console

Wenn Sie alle Zugriffsebenen auflisten möchten, öffnen Sie in der Google Cloud Console die Seite Access Context Manager und wählen Sie, wenn Sie dazu aufgefordert werden, Ihre Organisation aus. Auf der Seite werden die Zugriffsebenen Ihrer Organisation in einem Raster angezeigt, einschließlich Details zur Konfiguration der einzelnen Zugriffsebenen.

Zur Seite "Access Context Manager"

gcloud

Verwenden Sie den Befehl list, um alle Zugriffsebenen aufzulisten.

gcloud access-context-manager levels list \
  [--policy=POLICY_NAME]

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

Die Ausgabe sieht etwa so aus:

NAME             TITLE                  LEVEL_TYPE
Device_Trust     Device_Trust Extended  Basic
Service_Group_A  Service_Group_A        Basic

API

Rufen Sie zum Auflisten aller Zugriffsebenen für eine Richtlinie accessLevels.list auf.

GET https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation.

Anfragetext

Der Anfragetext muss leer sein.

Optionale Parameter

Geben Sie einen oder mehrere der folgenden Abfrageparameter an.

Parameter
pageSize

number

Standardmäßig hat die Liste der von accessLevels.list zurückgegebenen Zugriffsebenen Seitenumbrüche. Auf jeder Seite werden höchstens 100 Zugriffsebenen angezeigt.

Mit diesem Parameter können Sie die Anzahl der Zugriffsebenen ändern, die pro Seite zurückgegeben werden sollen:

pageToken

string

Wenn die Anzahl der von Ihrem Aufruf zurückgegebenen Zugriffsebenen die Seitengröße überschreitet, enthält der Antworttext ein Seitentoken.

Sie können diesen Parameter in einem nachfolgenden Aufruf verwenden, um die nächste Ergebnisseite zu öffnen.

accessLevelFormat

enum(LevelFormat)

Normalerweise werden Zugriffsebenen so zurückgegeben, wie sie definiert sind, entweder als BasicLevel oder als CustomLevel.

Sie können den Wert CEL für diesen Parameter angeben, um BasicLevels als CustomLevels in Cloud Common Expression Language zurückzugeben.

Antworttext

Bei Erfolg enthält der Antworttext für den Aufruf ein AccessLevels-Objekt, das die Zugriffsebenen auflistet, und einen nextPageToken-String. nextPageToken hat nur dann einen Wert, wenn die Anzahl der zurückgegebenen Zugriffsebenen die Seitengröße überschreitet. Andernfalls wird nextPageToken als leerer String zurückgegeben.

Zugriffsebenen auflisten (formatiert)

Mit der gcloud CLI können Sie eine Liste Ihrer Zugriffsebenen im YAML- oder JSON-Format abrufen.

Eine formatierte Liste von Zugriffsebenen rufen Sie mit dem Befehl list auf.

gcloud access-context-manager levels list \
  --format=FORMAT \
  [--policy=POLICY_NAME]

Ersetzen Sie Folgendes:

  • FORMAT: einer der folgenden Werte:

    • list (YAML-Format)

    • json (JSON-Format)

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

Die YAML-Ausgabe sieht in etwa so aus:

- basic: {'conditions': [{'ipSubnetworks': ['192.0.2.0/24']}]}
  description: Level for corp access.
  name: accessPolicies/123456789012/accessLevels/corp_level
  title: Corp Level
- basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['192.0.2.0/24']}]}
  description: Level for net access.
  name: accessPolicies/123456789012/accessLevels/net_level
  title: Net Level

Die JSON-Ausgabe sieht in etwa so aus:

[
  {
    "basic": {
      "conditions": [
        {
          "ipSubnetworks": [
            "192.0.2.0/24"
          ]
        }
      ]
    },
    "description": "Level for corp access.",
    "name": "accessPolicies/123456789012/accessLevels/corp_level",
    "title": "Corp Level"
  },
  {
    "basic": {
      "combiningFunction": "OR",
      "conditions": [
        {
          "ipSubnetworks": [
            "192.0.2.0/24"
          ]
        }
      ]
    },
    "description": "Level for net access.",
    "name": "accessPolicies/123456789012/accessLevels/net_level",
    "title": "Net Level"
  }
]

Zugriffsebene beschreiben

Console

Wenn Sie die Google Cloud Console verwenden, finden Sie die Schritte zum Auflisten von Zugriffsebenen hier. Wenn Sie Ihre Zugriffsebenen auflisten, werden in der Tabelle die Details angezeigt.

gcloud

Beim Auflisten von Zugriffsebenen werden nur der Name, der Titel und der Ebenentyp angezeigt. Detailinformationen über die Funktionsweise der Zugriffsebene erhalten Sie mit dem Befehl describe.

gcloud access-context-manager levels describe LEVEL_NAME \
    [--policy=POLICY_NAME]

Ersetzen Sie Folgendes:

  • LEVEL_NAME: der Name der Zugriffsebene, die Sie beschreiben möchten.

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

Der Befehl gibt Informationen zur Ebene im YAML-Format aus. Wenn die Ebene beispielsweise den Zugriff auf bestimmte Betriebssystemversionen einschränkt, sieht die Ausgabe in etwa so aus:

basic:
  conditions:
  - devicePolicy:
      allowedEncryptionStatuses:
      - ENCRYPTED
      osConstraints:
      - minimumVersion: 10.13.6
        osType: DESKTOP_MAC
      - minimumVersion: 10.0.18219
        osType: DESKTOP_WINDOWS
      - minimumVersion: 68.0.3440
        osType: DESKTOP_CHROME_OS
      requireScreenlock: true
name: accessPolicies/123456789012/accessLevels/Device_Trust
title: Device_Trust Extended

API

Beim Auflisten von Zugriffsebenen werden nur der Name, der Titel und der Ebenentyp angezeigt. Um detaillierte Informationen zu einer Zugriffsebene zu erhalten, rufen Sie accessLevels.get auf.

GET https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation.

  • LEVEL_NAME: der Name der Zugriffsebene, die Sie beschreiben möchten.

Anfragetext

Der Anfragetext muss leer sein.

Optionale Parameter

Fügen Sie optional den Abfrageparameter accessLevelFormat ein. Normalerweise werden Zugriffsebenen so zurückgegeben, wie sie definiert sind, entweder als BasicLevel oder als CustomLevel.

Sie können den Wert CEL für diesen Parameter angeben, um BasicLevels als CustomLevels in Cloud Common Expression Language zurückzugeben.

Antworttext

Bei Erfolg enthält der Antworttext für den Aufruf eine AccessLevel-Ressource, die Details zu den Funktionen der Zugriffsebene, der letzten Aktualisierung der Ebene und mehr enthält.

Zugriffsebene aktualisieren

In diesem Abschnitt wird beschrieben, wie Sie einzelne Zugriffsebenen aktualisieren können. Informationen zum Aktualisieren aller Zugriffsebenen Ihrer Organisation in einem Vorgang finden Sie unter Bulk-Änderungen an Zugriffsebenen vornehmen.

Console

So aktualisieren Sie eine Zugriffsebene:

  1. Öffnen Sie in der Google Cloud Console die Seite Access Context Manager.

    Zur Seite "Access Context Manager"

  2. Wählen Sie Ihre Organisation aus, wenn Sie dazu aufgefordert werden.

  3. Klicken Sie in der Tabelle auf den Namen der Zugriffsebene, die Sie aktualisieren möchten.

  4. Nehmen Sie im Bereich Zugriffsebene bearbeiten die gewünschten Änderungen an der Zugriffsebene vor.

    Eine vollständige Liste der Attribute, die Sie hinzufügen oder ändern können, finden Sie unter Attribute für Zugriffsebenen.

  5. Klicken Sie auf Speichern.

    Neben dem Aktualisieren oder Entfernen vorhandener Bedingungen können Sie neue Bedingungen einfügen sowie vorhandene Bedingungen um neue Attribute erweitern.

gcloud

Verwenden Sie zum Aktualisieren einer Zugriffsebene den Befehl update.

Einfache Zugriffsebene:

gcloud access-context-manager levels update LEVEL_NAME \
    --basic-level-spec=FILE \
    [--policy=POLICY_NAME]

Benutzerdefinierte Zugriffsebene:

gcloud access-context-manager levels update LEVEL_NAME \
    --custom-level-spec=FILE \
    [--policy=POLICY_NAME]

Ersetzen Sie Folgendes:

  • LEVEL_NAME: der Name der Zugriffsebene, die Sie aktualisieren möchten.

  • FILE: der Name einer YAML-Datei, die die Bedingungen für die Zugriffsebene (für einfache Zugriffsebenen) oder einen CEL-Ausdruck definiert, der in einen einzelnen booleschen Wert (für benutzerdefinierte Zugriffsebenen) aufgelöst wird.

    Eine vollständige Liste der Attribute, die Sie in Ihren einfachen Zugriffsebenenbedingungen verwenden können, finden Sie unter Attribute für Zugriffsebenen.

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

  • Sie können eine oder mehrere der folgenden Optionen einfügen

    Optionen
    combine-function

    Diese Option wird nur für einfache Zugriffsebenen verwendet.

    Legt fest, wie Bedingungen kombiniert werden.

    Gültige Werte: AND, OR

    description

    Ausführliche Beschreibung der Zugriffsebene

    title

    Kurzer Titel für die Zugriffsebene; Der Titel der Zugriffsebene wird in der Google Cloud Console angezeigt.

    Optional können Sie beliebige allgemeine gcloud-Flags angeben.

Beispielbefehl

gcloud access-context-manager levels update Device_Trust \
    --basic-level-spec=corpdevspec.yaml \
    --combine-function=OR \
    --description='Access level that conforms to updated corporate spec.' \
    --title='Device_Trust Extended' \
    --policy=123456789012

API

Rufen Sie zum Aktualisieren einer Zugriffsebene Folgendes auf: accessLevels.patch.

PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation.

  • LEVEL_NAME: der Name der Zugriffsebene, die Sie aktualisieren möchten.

  • FIELDS: eine durch Kommas getrennte Liste von vollständig qualifizierten Feldnamen, die Sie aktualisieren.

Anfragetext

Der Anfragetext muss eine AccessLevel-Ressource enthalten, die die Änderungen angibt, die Sie an der Zugriffsebene vornehmen möchten.

Antworttext

Bei Erfolg enthält der Antworttext für den Aufruf eine Operation-Ressource, die Details zum Patch-Vorgang enthält.

Zugriffsebene löschen

In diesem Abschnitt wird beschrieben, wie Sie Access Context Manager-Zugriffsebenen löschen. Das Löschen einer Zugriffsebene erfolgt in zwei Schritten:

  1. Abhängigkeiten auf Zugriffsebene prüfen

  2. Einzelne Zugriffsebene löschen

Abhängigkeiten auf Zugriffsebene prüfen

Bevor Sie eine Zugriffsebene löschen, sollten Sie prüfen, ob sie nicht von anderen Zugriffsebenen, VPC Service Controls-Dienstperimetern, Google Workspace-Richtlinien für kontextsensitiven Zugriff, Google Cloud -Zugriffsbindungen oder IAM-Bedingungen referenziert wird.

So finden Sie alle Zugriffsebenen, die auf die Zugriffsebene verweisen, die Sie löschen möchten:

  1. Prüfen Sie, ob jq installiert ist. Führen Sie jq --version aus, um zu prüfen, ob jq installiert ist. Installieren Sie bei Bedarf jq.

  2. Prüfen Sie, ob Abhängigkeiten auf Zugriffsebene bestehen. Mit diesem Befehl werden alle Zugriffsebenen aufgelistet. Anschließend wird mit jq nach Zugriffsebenen gefiltert, die in einfachen oder benutzerdefinierten Ebenendefinitionen auf LEVEL_NAME verweisen.

    echo "Searching for Access Levels referencing: accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME"
    echo ""
    
    gcloud access-context-manager levels list \
      --policy="POLICY_NAME" \
      --format=json | \
    jq -r '
      .[] |
      select(
        # Check basic levels: Is the target access level present as an element in any requiredAccessLevels array?
        ([(.basic.conditions // [])[] | (.requiredAccessLevels // []) | index("accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME") != null] | any)
        or
        # Check custom levels: Does the expression string contain the target access level?
        ((.custom.expr.expression // "") | (contains("accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME") or contains("levels.LEVEL_NAME")))
      ) |
      "  - \(.title) (Name: \(.name))"
    '
    
    echo ""
    echo "If any levels are listed, they reference LEVEL_NAME. You must update these referencing levels before you delete LEVEL_NAME."

    Ersetzen Sie Folgendes:

    • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

    • LEVEL_NAME: der Name der Zugriffsebene, die Sie löschen möchten, z. B. my_level.

    In der Ausgabe werden alle Zugriffsebenen, die auf accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME oder levels.LEVEL_NAME verweisen, zusammen mit ihren title und name aufgeführt. Zu diesen Zugriffsebenen gehören:

    • Grundlegende Ebenen, wobei accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME in requiredAccessLevels aufgeführt ist

    • Benutzerdefinierte Ebenen, bei denen accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME oder levels.LEVEL_NAME im String custom.expr.expression aufgeführt ist.

  3. Wenn der Befehl referenzierende Zugriffsebenen auflistet, müssen Sie diese Ebenen zuerst aktualisieren, um die Abhängigkeit zu entfernen. Eine Anleitung finden Sie unter Zugriffsebene aktualisieren.

Nachdem alle Verweise entfernt wurden, können Sie die einzelne Zugriffsebene löschen.

Einzelne Zugriffsebene löschen

Console

So löschen Sie eine Zugriffsebene:

  1. Öffnen Sie in der Google Cloud Console die Seite Access Context Manager.

    Zur Seite "Access Context Manager"

  2. Wählen Sie Ihre Organisation aus, wenn Sie dazu aufgefordert werden.

  3. Klicken Sie im Raster in der Zeile der Zugriffsebene, die Sie löschen möchten, auf den Button .

  4. Klicken Sie auf Löschen.

  5. Bestätigen Sie im angezeigten Dialogfeld, dass Sie die Zugriffsebene löschen möchten.

gcloud

So löschen Sie eine Zugriffsebene:

  1. Verwenden Sie zum Löschen einer Zugriffsebene den Befehl delete.

    gcloud access-context-manager levels delete LEVEL_NAME \
        [--policy=POLICY_NAME]

    Ersetzen Sie Folgendes:

    • LEVEL_NAME: der Name der Zugriffsebene, die Sie löschen möchten.

    • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation. Dieser Wert ist nur erforderlich, wenn Sie keine Standardzugriffsrichtlinie festgelegt haben.

  2. Bestätigen Sie, dass Sie die Zugriffsrichtlinie löschen möchten.

    Beispiel:

    You are about to delete level Device_Trust
    
    Do you want to continue (Y/n)?
    

    Die Ausgabe sollte in etwa so aussehen:

    Waiting for operation [accessPolicies/123456789012/accessLevels/Device_Trust/delete/1531171874311645] to complete...done.
    Deleted level [Device_Trust].
    

API

Rufen Sie accessLevels.delete auf, um eine Zugriffsebene zu löschen.

DELETE https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Ersetzen Sie Folgendes:

  • POLICY_NAME: der Name der Zugriffsrichtlinie Ihrer Organisation.

  • LEVEL_NAME: der Name der Zugriffsebene, die Sie löschen möchten.

Anfragetext

Der Anfragetext muss leer sein.

Antworttext

Bei Erfolg enthält der Antworttext für den Aufruf eine Operation-Ressource, die Details zum Löschvorgang enthält.