Cette page explique comment gérer les niveaux d'accès existants. Vous pouvez :
Avant de commencer
Définissez la règle d'accès par défaut de l'outil de ligne de commande
gcloud
.-ou-
Récupérez le nom de votre règle. Le nom de la règle est requis pour les commandes qui utilisent l'outil de ligne de commande
gcloud
et effectuent des appels d'API. Si vous définissez une règle d'accès par défaut, vous n'avez pas besoin de la spécifier pour l'outil de ligne de commandegcloud
.Assurez-vous de disposer d'un rôle IAM (Identity and Access Management) au niveau de l'organisation vous permettant de gérer les niveaux d'accès. Demandez à votre administrateur de vous attribuer l'un des rôles suivants, ou un rôle personnalisé accordant les mêmes autorisations :
Pour afficher les niveaux d'accès :Lecteur Access Context Manager (
roles/accesscontextmanager.policyReader
)Pour afficher et modifier les niveaux d'accès :Éditeur Access Context Manager (
roles/accesscontextmanager.policyEditor
) ou Administrateur Access Context Manager (roles/accesscontextmanager.policyAdmin
)
Répertorier les niveaux d'accès
Console
Pour répertorier tous les niveaux d'accès, ouvrez la page Access Context Manager dans la console Google Cloud, puis, si vous y êtes invité, sélectionnez votre organisation. Les niveaux d'accès de votre organisation sont affichés dans une grille sur cette page. Des détails sur la configuration de chaque niveau d'accès sont également inclus.
gcloud
Pour répertorier tous les niveaux d'accès, utilisez la commande list
.
gcloud access-context-manager levels list \ [--policy=POLICY_NAME]
Où :
- POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.
La sortie sera semblable à ce qui suit :
NAME TITLE LEVEL_TYPE Device_Trust Device_Trust Extended Basic Service_Group_A Service_Group_A Basic
API
Pour répertorier tous les niveaux d'accès d'une stratégie, appelez accessLevels.list
.
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels
Où :
- POLICY_NAME est le nom de la règle d'accès de votre organisation.
Corps de la requête
Le corps de la requête doit être vide.
Paramètres facultatifs
Vous avez la possibilité d'inclure un ou plusieurs des paramètres de requête suivants.
Paramètres | |
---|---|
pageSize
|
Par défaut, la liste des niveaux d'accès renvoyée par Vous pouvez utiliser ce paramètre pour modifier le nombre de niveaux d'accès renvoyé par page. |
pageToken
|
Si le nombre de niveaux d'accès renvoyé par votre appel est supérieur à la valeur "pageSize", le corps de la réponse inclura un jeton de page. Vous pouvez utiliser ce paramètre dans un nouvel appel pour obtenir la page de résultats suivante. |
accessLevelFormat
|
Normalement, les niveaux d'accès sont renvoyés tels qu'ils sont défini: Vous pouvez spécifier la valeur |
Corps de la réponse
En cas de succès, le corps de réponse de l'appel contient un objet AccessLevels
qui répertorie les niveaux d'accès, ainsi qu'une chaîne nextPageToken
. Une valeur n'est attribuée à nextPageToken
que si le nombre de niveaux d'accès renvoyé est supérieur à la taille de la page. Sinon, nextPageToken
est renvoyé sous forme de chaîne vide.
Répertorier les niveaux d'accès (formatés)
L'outil de ligne de commande gcloud
vous permet d'obtenir la liste de vos niveaux d'accès au format YAML ou JSON.
Pour obtenir la liste formatée des niveaux d'accès, utilisez la commande list
.
gcloud access-context-manager levels list \ --format=FORMAT \ [--policy=POLICY_NAME]
Où :
FORMAT est l'une des valeurs suivantes :
list
(format YAML)json
(format JSON)
POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.
La sortie YAML sera semblable à ce qui suit :
- basic: {'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for corp access. name: accessPolicies/165717541651/accessLevels/corp_level title: Corp Level - basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['8.8.0/24']}]} description: Level for net access. name: accessPolicies/165717541651/accessLevels/net_level title: Net Level
Le résultat JSON se présente comme suit :
[ { "basic": { "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for corp access.", "name": "accessPolicies/165717541651/accessLevels/corp_level", "title": "Corp Level" }, { "basic": { "combiningFunction": "OR", "conditions": [ { "ipSubnetworks": [ "8.8.0/24" ] } ] }, "description": "Level for net access.", "name": "accessPolicies/165717541651/accessLevels/net_level", "title": "Net Level" } ]
Décrire un niveau d'accès
Console
Pour utiliser la console Google Cloud, reportez-vous à la procédure répertorier les niveaux d'accès. Lorsque vous répertoriez les niveaux d'accès, des détails sont fournis dans la grille qui s'affiche.
gcloud
Lorsque vous répertoriez des niveaux d'accès à l'aide de gcloud, seuls les noms, les titres et les types des différents niveaux vous sont renvoyés. Pour obtenir des informations détaillées sur ce que fait un niveau, utilisez la commande describe
.
gcloud access-context-manager levels describe LEVEL_NAME \ [--policy=POLICY_NAME]
Où :
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez décrire.
POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.
Cette commande imprime un résultat au format YAML contenant des informations relatives au niveau d'accès spécifié. Par exemple, si le niveau restreint l'accès à certaines versions de différents systèmes d'exploitation, la sortie peut ressembler à ceci :
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/330193482019/accessLevels/Device_Trust title: Device_Trust Extended
API
Lorsque vous répertoriez des niveaux d'accès à l'aide de l'API, seuls les noms, les titres et les types des différents niveaux vous sont renvoyés.
Pour obtenir des informations détaillées sur un niveau d'accès, appelez accessLevels.get
.
GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
Où :
POLICY_NAME est le nom de la règle d'accès de votre organisation.
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez décrire.
Corps de la requête
Le corps de la requête doit être vide.
Paramètres facultatifs
Vous pouvez également inclure le paramètre de requête accessLevelFormat
. Normalement, les niveaux d'accès sont renvoyés tels qu'ils sont définis : BasicLevel
ou CustomLevel
.
Vous pouvez spécifier la valeur CEL
pour ce paramètre pour renvoyer BasicLevels
en tant que CustomLevels
dans Cloud Common Expression Language.
Corps de la réponse
En cas de succès, le corps de la réponse à l'appel contient une ressource AccessLevel
qui fournit des détails sur le fonctionnement du niveau d'accès et la date de sa dernière mise à jour, etc.
Mettre à jour un niveau d'accès
Cette section explique comment mettre à jour des niveaux d'accès individuels. Pour mettre à jour tous les niveaux d'accès de votre organisation en une seule opération, consultez la section Apporter des modifications groupées aux niveaux d'accès.
Console
Pour mettre à jour un niveau d'accès :
Ouvrez la page Access Context Manager dans la console Google Cloud.
Si vous y êtes invité, sélectionnez votre organisation.
Dans la grille, cliquez sur le nom du niveau d'accès que vous souhaitez mettre à jour.
Dans le volet Edit Access Level (Modifier le niveau d'accès), apportez des modifications au niveau d'accès.
Pour obtenir une liste complète des attributs que vous pouvez ajouter ou modifier, reportez-vous à la page Attributs de niveau d'accès.
Cliquez sur Save (Enregistrer).
Outre le fait de pouvoir mettre à jour ou supprimer des conditions existantes, vous avez la possibilité d'ajouter de nouvelles conditions, ainsi que d'ajouter de nouveaux attributs aux conditions existantes.
gcloud
Utilisez la commande update
pour mettre à jour un niveau d'accès.
Niveau d'accès de base :
gcloud access-context-manager levels update LEVEL_NAME \ --basic-level-spec=FILE \ [--policy=POLICY_NAME]
Niveau d'accès personnalisé :
gcloud access-context-manager levels update LEVEL_NAME \ --custom-level-spec=FILE \ [--policy=POLICY_NAME]
Où :
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez mettre à jour.
FILE est le nom d'un fichier .yaml qui définit les conditions du niveau d'accès (pour les niveaux d'accès de base) ou une expression CEL qui donne une seule valeur booléene (pour les niveaux d'accès personnalisés).
Pour obtenir la liste complète des attributs que vous pouvez utiliser dans vos conditions de niveau d'accès de base, consultez la section Attributs de niveau d'accès.
POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.
Vous pouvez inclure une ou plusieurs des options suivantes.
Options combine-function
Cette option n'est utilisée que pour les niveaux d'accès de base.
Cette option permet de spécifier comment les conditions sont combinées.
Valeurs valides :
AND
etOR
description
Description longue du niveau d'accès
title
Un titre court pour le niveau d'accès. Le titre du niveau d'accès s'affiche dans la console Google Cloud.
Vous avez la possibilité d'inclure n’importe quel indicateur gcloud-wide.
Exemple de commande
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=1034095178592
API
Pour mettre à jour un niveau d'accès, appelez la méthode accessLevels.patch
.
PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS
Où :
POLICY_NAME est le nom de la règle d'accès de votre organisation.
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez décrire.
FIELDS est une liste de noms de champs complets, séparés par des virgules, que vous mettez à jour.
Corps de la requête
Le corps de la requête doit inclure une ressource AccessLevel
qui spécifie les modifications que vous souhaitez apporter au niveau d'accès.
Corps de la réponse
En cas de succès, le corps de la réponse à l'appel contient une ressource Operation
qui fournit des détails sur l'opération corrective.
Supprimer un niveau d'accès
Console
Pour supprimer un niveau d'accès :
Ouvrez la page Access Context Manager dans la console Google Cloud.
Si vous y êtes invité, sélectionnez votre organisation.
Dans la grille, cliquez sur le bouton
de la ligne correspondant au niveau d'accès que vous souhaitez supprimer.Cliquez sur Supprimer.
Dans la boîte de dialogue qui s'affiche, confirmez que vous souhaitez supprimer le niveau d'accès.
gcloud
Pour supprimer un niveau d'accès :
Utilisez la commande
delete
pour supprimer un niveau d'accès.gcloud access-context-manager levels delete LEVEL_NAME \ [--policy=POLICY_NAME]
Où :
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez supprimer.
POLICY_NAME est le nom de la règle d'accès de votre organisation. Cette valeur n'est requise que si vous n'avez pas défini de règle d'accès par défaut.
Confirmez que vous souhaitez supprimer le niveau d'accès.
Exemple :
You are about to delete level Device_Trust Do you want to continue (Y/n)?
You should see output similar to the following:
Waiting for operation [accessPolicies/330193482019/accessLevels/Device_Trust/delete/1531171874311645] to complete...done. Deleted level [Device_Trust].
API
Pour supprimer un niveau d'accès, appelez la méthode accessLevels.delete
.
DELETE https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME
Où :
POLICY_NAME est le nom de la règle d'accès de votre organisation.
LEVEL_NAME est le nom du niveau d'accès que vous souhaitez décrire.
Corps de la requête
Le corps de la requête doit être vide.
Corps de la réponse
En cas de succès, le corps de la réponse à l'appel contient une ressource Operation
qui fournit des détails sur l'opération de suppression.