Gerätebasierte Zugriffsebenen erstellen

In diesem Dokument erfahren Sie, wie Administratoren Zugriffsebenen basierend auf Geräteattribute (gerätebasierte Zugriffsebenen) mit Access Context Manager

Zugriffsebene ist eine Reihe von Attributen, mit denen der Zugriff auf Ressourcen auf Kontextinformationen zur Anfrage. Als Administrator können Sie einfache oder benutzerdefinierte Zugriffsebenen mithilfe der Geräteattribute die von der Endpunktprüfung erfasst wurden.

Hinweise

Zugriffsebene erstellen

Console

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

    Zu Access Context Manager

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

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

  4. Erstellen Sie im Bereich Neue Zugriffsebene eine einfache oder benutzerdefinierte Zugriffsebene. Maximieren Sie den erforderlichen Abschnitt, um eine Anleitung zu sehen.

    Einfache Zugriffsebene erstellen

    1. Geben Sie in das Feld Titel der Zugriffsebene einen Titel für die Zugriffsebene ein.

      Der Titel darf höchstens 50 Zeichen lang sein, mit einem Buchstaben beginnen dürfen nur Zahlen, Buchstaben, Unterstriche und Leerzeichen enthalten.

    2. Gehen Sie im Abschnitt Bedingungen erstellen in wie folgt vor: wählen Sie Basismodus aus.

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

        Wenn Sie z. B. 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 Seite Access Context Manager

    Benutzerdefinierte Zugriffsebene erstellen

    1. Geben Sie im Feld Titel der Zugriffsebene einen Titel ein. die Zugriffsebene zu ändern.

      Der Titel darf maximal 50 Zeichen lang sein und muss mit einem Buchstaben beginnen. Er darf nur Zahlen, Buchstaben, Unterstriche und Leerzeichen enthalten.

    2. Gehen Sie im Abschnitt Bedingungen erstellen in wie folgt vor: wählen Sie Erweiterter Modus aus.
    3. Geben Sie im Abschnitt Bedingungen die Ausdrücke ein Ihre benutzerdefinierte Zugriffsebene. Die Bedingung muss in einen einzelnen booleschen Wert aufgelöst werden Wert.

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

      Der folgende CEL-Ausdruck ermöglicht nur den Zugriff von den verschlüsselten Geräten:

      device.encryption_status == DeviceEncryptionStatus.ENCRYPTED

      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.

    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 levels create.

  1. Erstellen Sie eine .yaml-Datei.

    • Für eine grundlegende Zugriffsebene geben Sie Geräterichtlinienattribute für die Zugriffsebene.

      Beispiel: So beschränken Sie den Zugriff auf Nutzer mit verschlüsseltem Gerätespeicher: Geben Sie Folgendes in die Datei .yaml ein:

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

      Beispiel: Zugriff auf Nutzer mit verschlüsseltem Gerätespeicher beschränken Geben Sie für den Status des genehmigten Geräts Folgendes in das Feld .yaml-Datei.

      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 mit allen möglichen Attributen finden Sie unter dieses Beispiel für eine YAML-Datei für die Zugriffsebene

    Informationen zu den verfügbaren Geräteattributen für Spezifikationen für benutzerdefinierte Ebenen finden Sie unter Von der Endpunktprüfung erfasste Geräteattribute.

  2. Erstellen Sie die Zugriffsebene.

    • Führen Sie für eine einfache Zugriffsebene den folgenden Befehl aus:

      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 aus, um eine benutzerdefinierte Zugriffsebene zu erhalten:

      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 folgendes Format haben: accessPolicies/POLICY_ID/accessLevels/LEVEL_ID.

    • LEVEL_ID ist der Name der Zugriffsebene. Der Name darf höchstens 50 Zeichen lang sein und muss mit einem Buchstaben beginnen. dürfen 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. Bei einer grundlegenden Zugriffsebene enthält sie Attribute für Geräterichtlinien. Bei einer benutzerdefinierten Zugriffsebene enthält es einen CEL-Ausdruck, der als einzelnes Schlüssel/Wert-Paar formatiert ist: „expression: "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

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • POLICY_ID: die ID der Zugriffsrichtlinie Ihrer Organisation.
  • LEVEL_ID: ein Name für die Zugriffsebene. Der Name darf maximal 50 Zeichen lang sein. muss mit einem Buchstaben beginnen und darf nur Zahlen, Buchstaben und Unterstriche enthalten.
  • ACCESS_LEVEL_NAME: Der eindeutige Name für die Zugriffsebene. Folgende Voraussetzungen müssen erfüllt sein: Format: 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 der Anforderungen für die zu gewährende Zugriffsebene.

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 in etwa folgende JSON-Antwort 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

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • POLICY_ID: die ID der Zugriffsrichtlinie Ihrer Organisation.
  • LEVEL_ID: ein Name für die Zugriffsebene. Der Name darf maximal 50 Zeichen lang sein. muss mit einem Buchstaben beginnen und darf nur Zahlen, Buchstaben und Unterstriche enthalten.
  • ACCESS_LEVEL_NAME: Der eindeutige Name für die Zugriffsebene. Folgende Voraussetzungen müssen erfüllt sein: Format: 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 zu einem 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 in etwa folgende JSON-Antwort 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 Grundlegende Zugriffsebene erstellen.

Nächste Schritte