Benutzerdefinierte Zugriffsebene erstellen

Nachdem eine benutzerdefinierte Zugriffsebene erstellt wurde, kann sie auf dieselbe Weise wie einfache Zugriffsebenen verwaltet werden.

Weitere Informationen zum Erstellen von CEL-Ausdrücken für benutzerdefinierte Zugriffsebenen finden Sie in der Spezifikation für benutzerdefinierte Zugriffsebenen.

Console

So erstellen Sie eine benutzerdefinierte Zugriffsebene:

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

    Zur Seite "Access Context Manager"

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

  3. Klicken Sie oben auf der Seite Access Context Manager auf Neu.

  4. Im Bereich Neue Zugriffsebene:

    1. Geben Sie in das Feld Titel der Zugriffsebene einen Titel für die Zugriffsebene ein. Der Titel darf maximal 50 Zeichen lang sein, mit einem Buchstaben beginnen und darf nur Zahlen, Buchstaben, Unterstriche und Leerzeichen enthalten.

    2. Wählen Sie unter Bedingungen erstellen in die Option Erweiterter Modus aus.

    3. Geben Sie im Abschnitt Bedingungen die Ausdrücke für Ihre benutzerdefinierte Zugriffsebene ein. Die Bedingung muss in einen einzelnen booleschen Wert aufgelöst werden.

      Beispiele und weitere Informationen zur Unterstützung von Common Expression Language (CEL) und benutzerdefinierten Zugriffsebenen finden Sie in der Spezifikation für benutzerdefinierte Zugriffsebenen.

    4. Klicken Sie auf Speichern.

gcloud

Hinweis

Verwenden Sie zum Erstellen einer benutzerdefinierten Zugriffsebene mit dem gcloud-Befehlszeilentool den Befehl gcloud access-context-manager levels create.

gcloud access-context-manager levels create LEVEL_NAME \
  --title=TITLE \
  --custom-level-spec=FILE \
  --description=DESCRIPTION \
  --policy=POLICY_NAME

Wobei:

  • LEVEL_NAME ist ein eindeutiger Name für die Zugriffsebene. Dieser Name muss mit einem Buchstaben beginnen und darf nur Buchstaben, Zahlen und Unterstriche enthalten. Der Name darf maximal 50 Zeichen lang sein.

  • TITLE ist der kurze, für Menschen lesbare Titel für die Zugriffsebene.

  • FILE ist eine YAML-Datei, die den CEL-Ausdruck enthält, der als einzelnes Schlüssel/Wert-Paar formatiert ist: expression: "CEL_EXPRESSION".

    Beispiele und weitere Informationen zur Unterstützung von Common Expression Language (CEL) und benutzerdefinierten Zugriffsebenen finden Sie in der Spezifikation für benutzerdefinierte Zugriffsebenen.

  • DESCRIPTION (optional) ist eine menschenlesbare Beschreibung der Zugriffsebene.

  • POLICY_NAME ist der numerische Name der Zugriffsrichtlinie Ihrer Organisation.

Optional können Sie alle gcloud-Flags einfügen.

custom-level-spec-#yaml-Datei

Wenn Sie zum Erstellen einer benutzerdefinierten Zugriffsebene das gcloud-Befehlszeilentool verwenden, müssen Sie für die Option custom-level-spec eine YAML-Datei bereitstellen. Die YAML-Datei definiert einen CEL-Ausdruck, der in einen einzelnen booleschen Wert aufgelöst wird. Die YAML-Datei muss ein einzelnes Schlüssel/Wert-Paar im Format expression: "CEL_EXPRESSION" enthalten. Der Wert für expression muss ein String sein.

Beispiel-YAML-Datei

expression: "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED && (origin.region_code in ['US'] || device.is_admin_approved_device)"

Beispielbefehl

gcloud access-context-manager levels create Custom_Trust \
    --custom-level-spec=customspec.yaml \
    --description="Custom access level for corp." \
    --title="Custom Trust Level"

REST

Hinweis

Wenn Sie eine benutzerdefinierte Zugriffsebene erstellen möchten, verwenden Sie die Methode accessPolicies.accessLevels.create.

Anfragetext

Fügen Sie im Anfragetext für den Aufruf eine Instanz des AccessLevel-Objekts ein.

{
  "name": string,
  "title": string,
  "description": string,
  "custom": {
    "expr": {
      "expression": string,
      "title": string,
      "description": string
    }
  }
}

Erstellen Sie für das Feld custom ein Objekt, das die CEL-Ausdrücke für Ihre benutzerdefinierte Zugriffsebene enthält. Der vollständige Ausdruck muss in einen booleschen Wert aufgelöst werden. Die Felder title und description sind optional.

Beispiel

{
  "name": "example_custom_level",
  "title": "Example custom level",
  "description": "An example custom access level.",
  "custom":  {
    "expr": {
      "expression": "device.is_corp_owned == true || (device.os_type != OsType.OS_UNSPECIFIED && device.is_admin_approved_device == true)",
      "title": "Check for known devices",
      "description": "Permits requests from corp-owned devices and admin-approved devices with a known OS."
    }
  }
}

RPC

Hinweis

Rufen Sie CreateAccessLevel auf, um eine benutzerdefinierte Zugriffsebene zu erstellen.

Fügen Sie für das Feld access_level eine Instanz von AccessLevel ein.

Felder
name
Typ String
Beschreibung

Erforderlich

Der Ressourcenname für die Zugriffsebene. POLICY_ID ist der numerische Name der Zugriffsrichtlinie Ihrer Organisation. SHORT_NAME muss mit einem Buchstaben beginnen und darf nur Buchstaben, Zahlen und Unterstriche enthalten.

Format:


                accessPolicies/policy_id/accessLevels/short_name
                

title
Typ String
Beschreibung

Ein für Menschen lesbares Label für die Zugriffsebene. Zugriffsebenen müssen eindeutige Namen haben.

description
Typ String
Beschreibung

Eine Beschreibung der Zugriffsebene

custom
Typ String
Beschreibung

Die CEL-Ausdrücke für Ihre benutzerdefinierte Zugriffsebene. Der vollständige Ausdruck muss in einen booleschen Wert aufgelöst werden.