Utiliser RBAC avec l’interface de ligne de commande
Commandes RBAC xe CLI
Utilisez les commandes suivantes pour travailler avec les rôles et les sujets.
Pour répertorier tous les rôles définis disponibles
Exécutez la commande :xe role-list
Cette commande renvoie une liste des rôles actuellement définis, par exemple :
uid (RO) : 0165f154-ba3e-034e-6b27-5d271af109ba
name (RO) : pool-admin
description (RO) : Le rôle Administrateur de pool a un accès complet à tous les
fonctionnalités et paramètres, y compris l'accès à Dom0 et la gestion des sujets,
rôles et authentification externe
uid (RO) : b9ce9791-0604-50cd-0649-09b3284c7dfd
name (RO) : pool-operator
description (RO) : Le rôle d'opérateur de pool gère les ressources à l'échelle de l'hôte et du pool,
notamment la configuration du stockage, la création de pools de ressources et la gestion des correctifs, et
haute disponibilité (HA).
uid (RO) : 7955168d-7bec-10ed-105f-c6a7e6e63249
name (RO) : vm-power-admin
description (RO) : Le rôle Administrateur d'alimentation de la machine virtuelle dispose d'un accès complet à la machine virtuelle et
et peut choisir où démarrer les machines virtuelles et utiliser la mémoire dynamique
fonctions de contrôle et de snapshots de machine virtuelle
uid (RO) : aaa00ab5-7340-bfbc-0d1b-7cf342639a6e
name (RO) : vm-admin
description (RO) : Le rôle Administrateur de machines virtuelles peut gérer les machines virtuelles et les modèles
uid (RO) : fb8d4ff9-310c-a959-0613-54101535d3d5
name (RO) : vm-operator
description (RO) : Le rôle d'opérateur de machine virtuelle peut utiliser des machines virtuelles et interagir avec des consoles de machine virtuelle
uid (RO) : 7233b8e3-eacb-d7da-2c95-f2e581cdbf4e
name (RO) : lecture seule
description (RO) : Le rôle Lecture seule peut se connecter avec un accès en lecture seule de base
Note :
Cette liste de rôles est statique. Vous ne pouvez pas ajouter, supprimer ou modifier des rôles.
Pour afficher la liste des sujets actuels
Exécutez la commande suivante :
liste de sujets xe
Cette commande renvoie une liste d’ utilisateurs, leur uuid et les rôles auxquels ils sont associés :
uid (RO) : bb6dd239-1fa9-a06b-a497-3be28b8dca44
identificateur de sujet (RO) : S-1-5-21-1539997073-1618981536-2562117463-2244
other-config (MRO) : nom de domaine : exemple01user_vm_admin ; subject-upn : \
user_vm_admin@XENDT.NET ; sujet-uid : 1823475908 ; sujet-gid : 1823474177 ; \
subject-sid : S-1-5-21-1539997073-1618981536-2562117463-2244 ; sujet-gecos : \
user_vm_admin ; subject-displayname : user_vm_admin ; subject-is-group : false ; \
sujet-compte-désactivé : false ; sujet-compte-expiré : false ; \
sujet-account-locked : false ; sujet-mot de passe expiré : false
rôles (SRO) : vm-admin
uid (RO) : 4fe89a50-6a1a-d9dd-afb9-b554cd00c01a
identificateur du sujet (RO) : S-1-5-21-1539997073-1618981536-2562117463-2245
other-config (MRO) : nom de domaine : exemple02user_vm_op ; subject-upn : \
user_vm_op@XENDT.NET ; sujet-uid : 1823475909 ; sujet-gid : 1823474177 ; \
sujet-sid : S-1-5-21-1539997073-1618981536-2562117463-2245 ; \
subject-gecos : user_vm_op ; subject-displayname : user_vm_op ; \
subject-is-group : false ; sujet-compte-désactivé : false ; \
sujet-compte-expirée : false ; sujet-compte-verrouillé : \
false ; sujet-mot de passe expiré : false
rôles (SRO) : vm-operator
uid (RO) : 8a63fbf0-9ef4-4fef-b4a5-b42984c27267
identificateur de sujet (RO) : S-1-5-21-1539997073-1618981536-2562117463-2242
other-config (MRO) : sujet-nom : example03user_pool_op ; \
subject-upn : user_pool_op@XENDT.NET ; subject-uid : 1823475906 ; \
subject-gid : 1823474177 ; objet-s id :
S-1-5-21-1539997073-1618981536-2562117463-2242; \
subject-gecos : user_pool_op ; subject-displayname : user_pool_op ; \
subject-is-group : false ; sujet-compte-désactivé : false ; \
sujet-compte-expirée : false ; sujet-compte-verrouillé : \
false ; sujet-mot de passe expiré : false
rôles (SRO) : pool-operator
Pour ajouter un sujet au RBAC
Pour permettre aux utilisateurs AD existants d’utiliser RBAC, créez une instance d’objet dans , soit directement pour l’utilisateur AD, soit pour les groupes contenant :
Exécutez la commande suivante pour ajouter une nouvelle instance d’objet :
xe subject-add subject-name = utilisateur/groupe AD
Pour attribuer un rôle RBAC à un sujet
Après avoir ajouté un sujet, vous pouvez l’affecter à un rôle RBAC. Vous pouvez vous référer au rôle par son uuid ou son nom :
Exécutez la commande :
xe subject-role-add uuid = subject uuuid role-uuid = role_uuid
Ou
xe subject-role-add uuid = subject uuuid role-name = role_name
Par exemple, la commande suivante ajoute un objet avec l’uuidb9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 au rôle Administrateur de pool :
xe subject-role-add uuid = b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 rôle-name = pool-admin
Pour modifier le rôle RBAC d’un sujet
Pour modifier le rôle d’un utilisateur, il est nécessaire de les supprimer de son rôle existant et de les ajouter à un nouveau rôle :
Exécutez les commandes suivantes :
xe subject-role-remove uuid = subject uuuid rôle-name = \
role_name_to_remove
xe subject-role-add uuid = subject uuuid rôle-name = \
role_name_to_add
L’utilisateur doit se déconnecter et se reconnecter pour s’assurer que le nouveau rôle prend effet. Cela nécessite l’autorisation « Déconnexion des connexions utilisateur actives » disponible pour un administrateur de pool ou un opérateur de pool).
Avertissement :
Lorsque vous ajoutez ou supprimez un sujet de pool-admin, il peut prendre quelques secondes pour que tous les hôtes du pool acceptent les sessions ssh associées à cet objet.
Audit
Le journal d’audit RBAC enregistre toute opération effectuée par un utilisateur connecté.
-
Le message enregistre l’ID de sujet et le nom d’utilisateur associés à la session qui a appelé l’opération.
-
Si un objet appelle une opération qui n’est pas autorisée, l’opération est consignée.
-
Toute opération réussie est également enregistrée. Si l’opération a échoué, le code d’erreur est enregistré.
Commandes d’interface de ligne de commande xe du journal d’audit
La commande suivante télécharge tous les enregistrements disponibles du fichier d’audit RBAC dans le pool dans un fichier. Si le paramètre optionnel ‘since’ est présent, il ne télécharge que les enregistrements à partir de ce point précis dans le temps.
xe audit-log-get [since = timestamp] nom de fichier = nom de fichier de sortie
Pour obtenir tous les enregistrements d’audit du pool
Exécutez la commande suivante :
xe audit-log-get filename = / tmp/auditlog -pool-actions.out
Pour obtenir des enregistrements d’audit du pool depuis une milliseconde précise
Exécutez la commande suivante :
xe audit-log-get since = 2009-09-24T 17:56:20 .530Z \
nomfichier = / tmp/auditlog -pool-actions.out
Pour obtenir des enregistrements d’audit du pool depuis un horodatage précis minute
Exécutez la commande suivante :
xe audit-log-get since = 2009-09-24T 17:56 Z \
nomfichier = / tmp/auditlog -pool-actions.out