Gerätebasierte Zugriffsebenen erstellen

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

In diesem Dokument wird beschrieben, wie Administratoren mit Access Context Manager Zugriffsebenen anhand von Geräteattributen (gerätebasierte Zugriffsebenen) erstellen können.

Eine Zugriffsebene besteht aus mehreren Attributen, mit denen der Zugriff auf Ressourcen basierend auf Kontextinformationen zur Anfrage gewährt wird. Als Administrator können Sie mit den von der Endpunktprüfung erfassten Geräteattributen grundlegende oder benutzerdefinierte Zugriffsebenen erstellen.

Hinweis

Zugriffsebene erstellen

Console

  1. Rufen Sie in der Google Cloud Console die Seite Access Context Manager auf.

    Zu Access Context Manager

  2. Wenn Sie dazu aufgefordert werden, wählen Sie Ihre Organisation aus.

  3. Klicken Sie auf der Seite Access Context Manager auf Zugriffsebene erstellen.

  4. Erstellen Sie im Bereich Neue Zugriffsebene eine einfache oder eine benutzerdefinierte Zugriffsebene. Eine Anleitung dazu erhalten Sie, wenn Sie den entsprechenden Abschnitt maximieren.

    Einfache Zugriffsebene erstellen

    1. Geben Sie im 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 im Bereich Bedingungen erstellen in die Option Basismodus aus.

    3. Wählen Sie im Abschnitt Bedingungen die Geräteattribute aus:
      1. Klicken Sie auf Device Policy.
      2. Wählen Sie die erforderlichen Attribute aus.

        Wenn Sie beispielsweise die Administratorgenehmigung auf Geräten erzwingen möchten, wählen Sie Administratorgenehmigung erforderlich aus.

    4. Klicken Sie auf Speichern.

    Die neu erstellte Zugriffsebene wird auf der Seite Access Context Manager angezeigt.

    Benutzerdefinierte Zugriffsebene erstellen

    1. Geben Sie im 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 im Abschnitt 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.

      Die für Ihren CEL-Ausdruck verfügbaren Geräteattribute finden Sie in den Geräteattributen, die von der Endpunktprüfung erfasst werden.

      Der folgende CEL-Ausdruck erlaubt nur den Zugriff über die verschlüsselten Geräte:

      device.encryption_status == DeviceEncryptionStatus.ENCRYPTED

      Beispiele und weitere Informationen zur Unterstützung der Common Expression Language (CEL) und zu benutzerdefinierten Zugriffsebenen finden Sie in der Spezifikation der benutzerdefinierten Zugriffsebene.

    4. Klicken Sie auf Speichern.

    Die neu erstellte Zugriffsebene wird auf der Seite Access Context Manager angezeigt.

gcloud-CLI

Verwenden Sie zum Erstellen von Zugriffsebenen die Methode gcloud access-context-manager level create.

  1. Erstellen Sie eine .yaml-Datei.

    • Legen Sie für eine einfache Zugriffsebene Geräterichtlinienattribute für die Zugriffsebene fest.

      Beispiel: Wenn Sie den Zugriff auf Nutzer mit verschlüsseltem Gerätespeicher beschränken möchten, geben Sie in die Datei .yaml Folgendes ein:

        - devicePolicy:
            allowedEncryptionStatuses
              - ENCRYPTED
      
    • Geben Sie für eine benutzerdefinierte Zugriffsebene einen CEL-Ausdruck an, der als einzelnes Schlüssel/Wert-Paar formatiert ist: expression: "CEL_EXPRESSION"

      Beispiel: Wenn Sie den Zugriff auf Nutzer mit verschlüsseltem Gerätespeicher und mit dem Status des genehmigten Geräts beschränken möchten, geben Sie Folgendes in die Datei .yaml ein.

      expression: "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED && device.is_admin_approved_device"
      

    Eine Liste der Zugriffsebenenattribute und deren YAML-Format finden Sie unter Geräterichtlinienattribute. Eine umfassende YAML-Datei aller möglichen Attribute finden Sie in dieser Beispiel-YAML-Datei für die Zugriffsebene.

    Informationen zu den verfügbaren Geräteattributen für Spezifikationen auf benutzerdefinierter Ebene finden Sie unter Durch die Endpunktprüfung erfasste Geräteattribute.

  2. Erstellen Sie die Zugriffsebene.

    • Führen Sie den folgenden Befehl aus, um eine einfache Zugriffsebene zu erhalten:

      gcloud access-context-manager levels create ACCESS_LEVEL_NAME \
      --title=TITLE \
      --basic-level-spec=FILE_NAME.yaml\
      --policy=POLICY_NAME
      
    • Führen Sie den folgenden Befehl für eine benutzerdefinierte Zugriffsebene aus:

      gcloud access-context-manager levels create ACCESS_LEVEL_NAME \
      --title=TITLE \
      --custom-level-spec=FILE_NAME.yaml\
      --policy=POLICY_NAME
      

    Wobei:

    • ACCESS_LEVEL_NAME ist der eindeutige Name für die Zugriffsebene. Er muss das folgende Format haben: accessPolicies/POLICY_ID/accessLevels/LEVEL_ID.

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

    • TITLE ist ein für Menschen lesbarer Titel. Er muss für die Richtlinie eindeutig sein.

    • FILE_NAME ist der Name der .yaml-Datei. Für eine einfache Zugriffsebene enthält sie Geräterichtlinienattribute. Für eine benutzerdefinierte Zugriffsebene enthält sie einen CEL-Ausdruck, der als einzelnes Schlüssel/Wert-Paar formatiert ist: 'Ausdruck: "CEL_ExpressION".

    • POLICY_NAME ist der Name der Zugriffsrichtlinie Ihrer Organisation.

    Die Ausgabe sollte in etwa so aussehen:

    Create request issued for: NAME
    Waiting for operation [accessPolicies/POLICY_NAME/accessLevels/NAME/create/1521594488380943] to complete...done.
    Created level NAME.
    

API

Erstellen Sie mit der Methode accessPolicies.accessLevels.create eine Zugriffsebene.

Einfache Zugriffsebene erstellen

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • POLICY_ID: Die ID der Zugriffsrichtlinie Ihrer Organisation.
  • LEVEL_ID: ein Name für die Zugriffsebene. Der Name darf maximal 50 Zeichen lang sein, mit einem Buchstaben beginnen und darf nur Zahlen, Buchstaben und Unterstriche enthalten.
  • ACCESS_LEVEL_NAME: Der eindeutige Name für die Zugriffsebene. Er muss das folgende Format haben: accessPolicies/POLICY_ID/accessLevels/LEVEL_ID.
  • TITLE: ein für Menschen lesbarer Titel. Er muss für die Richtlinie eindeutig sein.
  • DESCRIPTION: eine Beschreibung der Zugriffsebene und ihrer Verwendung.
  • CONDITION: eine Liste von Anforderungen, die für die Zugriffsebene gewährt werden sollen.

HTTP-Methode und URL:

POST https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels

JSON-Text der Anfrage:


For basic access levels:

{
"name": ACCESS_LEVEL_NAME,
"title": TITLE,
  "description": DESCRIPTION,

  "basic": {
  "conditions": [
    {
    CONDITION
    }
   ],
  }
 },
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:


{
  "name": "operations/accessPolicies/84961948973/accessLevels/deviceEncrypted/create/1666896068847514",
  "metadata": {
    "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessLevel",
    "name": "accessPolicies/84961948973/accessLevels/deviceEncrypted",
    "title": "accessPolicies/84961948973/accessLevels/deviceEncrypted",
    "basic": {
      "conditions": [
        {
          "devicePolicy": {
            "allowedEncryptionStatuses": [
              "ENCRYPTED"
            ]
          }
        }
      ]
    }
  }
}

Benutzerdefinierte Zugriffsebene erstellen

Bevor Sie die Anfragedaten verwenden, ersetzen Sie die folgenden Werte:

  • POLICY_ID: Die ID der Zugriffsrichtlinie Ihrer Organisation.
  • LEVEL_ID: ein Name für die Zugriffsebene. Der Name darf maximal 50 Zeichen lang sein, mit einem Buchstaben beginnen und darf nur Zahlen, Buchstaben und Unterstriche enthalten.
  • ACCESS_LEVEL_NAME: Der eindeutige Name für die Zugriffsebene. Er muss das folgende Format haben: accessPolicies/POLICY_ID/accessLevels/LEVEL_ID.
  • TITLE: ein für Menschen lesbarer Titel. Er muss für die Richtlinie eindeutig sein.
  • DESCRIPTION: eine Beschreibung der Zugriffsebene und ihrer Verwendung.
  • CEL_EXPRESSION: ein CEL-Ausdruck, der auf einen booleschen Wert ausgewertet wird.

HTTP-Methode und URL:

POST https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels

JSON-Text der Anfrage:


{
"name": ACCESS_LEVEL_NAME,
"title": TITLE,
  "description": DESCRIPTION,

  "custom": {
   "conditions": [
     {
      "expr": {
     CEL_EXPRESSION
     }
    }
   ]
  }
 },
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/{parent=accessPolicies/POLICY_ID}/accessLevels" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:


{
  "name": "operations/accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelName/create/1666936427127701",
  "metadata": {
    "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessContextManagerOperationMetadata"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.AccessLevel",
    "name": "accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelName",
    "title": "accessPolicies/84961948973/accessLevels/sampleCustomAccessLevelTitle",
    "custom": {
      "expr": {
        "expression": "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED"
      }
    }
  }
}

Weitere Informationen zum Erstellen von Zugriffsebenen mit verschiedenen Bedingungen und Zugriffsebenenabhängigkeiten finden Sie unter Einfache Zugriffsebene erstellen.

Nächste Schritte