Une fois qu'un niveau d'accès personnalisé est créé, il peut être géré de la même manière que les niveaux d'accès de base.
Pour en savoir plus sur la création d'expressions CEL (Common Expression Language) pour les niveaux d'accès personnalisés, consultez la page Spécification de niveaux d'accès personnalisés.
Console
Pour créer un niveau d'accès personnalisé, procédez comme suit :
Ouvrez la page Access Context Manager dans la console Google Cloud.
Si vous y êtes invité, sélectionnez votre organisation.
En haut de la page Access Context Manager, cliquez sur New (Nouveau).
Dans le volet New Access Level (Nouveau niveau d'accès) :
Dans la zone Titre du niveau d'accès, saisissez un titre de niveau d'accès. Ce titre doit contenir au maximum 50 caractères, commencer par une lettre et ne peut contenir que des chiffres, des lettres, des traits de soulignement et des espaces.
À la suite de Créer des conditions en, sélectionnez Mode avancé.
Dans la section Conditions, saisissez les expressions pour votre niveau d'accès personnalisé. La condition doit correspondre à une valeur booléenne unique.
Pour obtenir des exemples et des informations supplémentaires sur la compatibilité avec le CEL (Common Expression Language) et les niveaux d'accès personnalisés, consultez la section Spécification de niveaux d'accès personnalisés.
Cliquez sur Save.
gcloud
Avant de commencer
- S'il n'en n'existe aucune, créez une règle d'accès pour votre organisation.
Pour créer un niveau d'accès personnalisé à l'aide de l'outil de ligne de commande gcloud
, utilisez la commande 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
Où :
LEVEL_NAME est le nom unique du niveau d'accès. Ce nom doit commencer par une lettre et ne peut contenir que des lettres, des chiffres et des traits de soulignement. Le nom ne peut pas comporter plus de 50 caractères.
TITLE est le titre court et lisible du niveau d'accès.
FILE est un fichier .yaml contenant votre expression CEL sous la forme d'une paire valeur/clé unique:
expression: "CEL_EXPRESSION"
.Pour obtenir des exemples et des informations supplémentaires sur la compatibilité avec le CEL (Common Expression Language) et les niveaux d'accès personnalisés, consultez la section Spécification de niveaux d'accès personnalisés.
DESCRIPTION est une description lisible du niveau d'accès (facultatif).
POLICY_NAME est le nom (au format numérique) de la règle d'accès de votre organisation.
Vous pouvez éventuellement inclure n'importe quel indicateur gcloud
-wide.
custom-level-spec
fichier YAML
Lorsque vous utilisez l'outil de ligne de commande gcloud
pour créer un niveau d'accès personnalisé, vous devez fournir un fichier .yaml pour l'option custom-level-spec
. Le fichier .yaml définit une expression CEL qui se résout en une valeur booléenne unique. Le fichier .yaml doit contenir une seule paire clé-valeur au format expression: "CEL_EXPRESSION"
. La valeur de expression
doit être une chaîne.
Exemple de fichier YAML
expression: "device.encryption_status == DeviceEncryptionStatus.ENCRYPTED && (origin.region_code in ['US'] || device.is_admin_approved_device)"
Exemple de commande
gcloud access-context-manager levels create Custom_Trust \
--custom-level-spec=customspec.yaml \
--description="Custom access level for corp." \
--title="Custom Trust Level" \
--policy=1521580097614100
REST
Avant de commencer
- S'il n'en n'existe aucune, créez une règle d'accès pour votre organisation.
Pour créer un niveau d'accès personnalisé, utilisez la méthode accessPolicies.accessLevels.create
.
Corps de la requête
Dans le corps de la requête de l'appel, incluez une instance de l'objet AccessLevel
.
{
"name": string,
"title": string,
"description": string,
"custom": {
"expr": {
"expression": string,
"title": string,
"description": string
}
}
}
Pour le champ custom
, créez un objet qui inclut les expressions CEL associées à votre niveau d'accès personnalisé. L'expression complète doit se résoudre en une valeur booléenne. Les champs title
et description
sont facultatifs.
Exemple
{
"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
Avant de commencer
- S'il n'en n'existe aucune, créez une règle d'accès pour votre organisation.
Pour créer un niveau d'accès personnalisé, appelez CreateAccessLevel
.
Pour le champ access_level
, incluez une instance de AccessLevel
.
Champs | |||||
---|---|---|---|---|---|
name
|
|
||||
title
|
|
||||
description
|
|
||||
custom
|
|