Citrix Hypervisor

Utiliser le RBAC avec l’interface de ligne de commande

Important :

La mise à jour cumulative 1 de Citrix Hypervisor 8.2 prend fin le 25 juin 2025. Planifiez votre mise à niveau vers XenServer 8 dès maintenant pour assurer une transition en douceur et un support continu. Pour plus d’informations, consultez Mise à niveau.

Si vous utilisez vos fichiers de licence Citrix Virtual Apps and Desktops pour obtenir une licence pour vos hôtes Citrix Hypervisor 8.2 Cumulative Update 1, ces fichiers de licence ne sont pas compatibles avec XenServer 8. Avant la mise à niveau, vous devez acquérir les fichiers de licence socket XenServer Premium Edition à utiliser avec XenServer 8. Ces fichiers de licence de socket sont disponibles en tant que droits des abonnements Citrix pour le cloud privé, Citrix Universal Hybrid Multi-Cloud, Citrix Universal MSP et Citrix Platform License pour l’exécution de vos charges de travail Citrix. Les clients Citrix qui n’ont pas encore migré vers ces nouveaux abonnements peuvent demander à participer à une promotion gratuite pour 10 000 licences de sockets XenServer Premium Edition. Pour plus d’informations, consultez XenServer.

Si vous n’obtenez pas de licence compatible pour XenServer 8 avant la mise à niveau, lorsque vous mettez à niveau vos hôtes, ils reviennent à l’édition d’essai de 90 jours. L’édition d’essai offre les mêmes fonctionnalités que l’édition Premium, avec quelques limitations. Pour plus d’informations, consultez Présentation des licences XenServer 8.

Commandes de l’interface de ligne de commande RBAC xe

Utilisez les commandes suivantes pour travailler avec des rôles et des 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 :

      uuid( RO): 0165f154-ba3e-034e-6b27-5d271af109ba
      name ( RO): pool-admin
      description ( RO): The Pool Administrator role has full access to all
      features and settings, including accessing Dom0 and managing subjects,
      roles and external authentication

      uuid ( RO): b9ce9791-0604-50cd-0649-09b3284c7dfd
      name ( RO): pool-operator
      description ( RO): The Pool Operator role manages host-  and pool-wide resources,
      including setting up storage, creating resource pools and managing patches, and
      high availability (HA).

      uuid( RO): 7955168d-7bec-10ed-105f-c6a7e6e63249
      name ( RO): vm-power-admin
      description ( RO): The VM Power Administrator role has full access to VM and
      template management and can choose where to start VMs and use the dynamic memory
      control and VM snapshot features

      uuid ( RO): aaa00ab5-7340-bfbc-0d1b-7cf342639a6e
      name ( RO): vm-admin
      description ( RO):  The VM Administrator role can manage VMs and templates

      uuid ( RO): fb8d4ff9-310c-a959-0613-54101535d3d5
      name ( RO): vm-operator
      description ( RO):  The VM Operator role can use VMs and interact with VM consoles

      uuid ( RO): 7233b8e3-eacb-d7da-2c95-f2e581cdbf4e
      name ( RO): read-only
      description ( RO): The Read-Only role can log in with basic read-only access
<!--NeedCopy-->

Remarque :

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 :

  xe subject-list
<!--NeedCopy-->

Cette commande renvoie une liste d’utilisateurs de Citrix Hypervisor, leur uuid et les rôles auxquels ils sont associés :

      uuid ( RO): bb6dd239-1fa9-a06b-a497-3be28b8dca44
      subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2244
      other-config (MRO): subject-name: example01\user_vm_admin; subject-upn: \
        user_vm_admin@XENDT.NET; subject-uid: 1823475908; subject-gid: 1823474177; \
        subject-sid: S-1-5-21-1539997073-1618981536-2562117463-2244; subject-gecos: \
        user_vm_admin; subject-displayname: user_vm_admin; subject-is-group: false; \
        subject-account-disabled: false; subject-account-expired: false; \
        subject-account-locked: false;subject-password-expired: false
      roles (SRO): vm-admin

      uuid ( RO): 4fe89a50-6a1a-d9dd-afb9-b554cd00c01a
      subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2245
      other-config (MRO): subject-name: example02\user_vm_op; subject-upn: \
        user_vm_op@XENDT.NET; subject-uid: 1823475909; subject-gid: 1823474177; \
        subject-sid: S-1-5-21-1539997073-1618981536-2562117463-2245; \
        subject-gecos: user_vm_op; subject-displayname: user_vm_op; \
        subject-is-group: false; subject-account-disabled: false; \
        subject-account-expired: false; subject-account-locked: \
        false; subject-password-expired: false
      roles (SRO): vm-operator

      uuid ( RO): 8a63fbf0-9ef4-4fef-b4a5-b42984c27267
      subject-identifier ( RO): S-1-5-21-1539997073-1618981536-2562117463-2242
      other-config (MRO): subject-name: example03\user_pool_op; \
        subject-upn: user_pool_op@XENDT.NET; subject-uid: 1823475906; \
        subject-gid: 1823474177; subject-s id:
        S-1-5-21-1539997073-1618981536-2562117463-2242; \
        subject-gecos: user_pool_op; subject-displayname: user_pool_op; \
        subject-is-group: false; subject-account-disabled: false; \
        subject-account-expired: false; subject-account-locked: \
        false; subject-password-expired: false
        roles (SRO): pool-operator
<!--NeedCopy-->

Pour ajouter un sujet au RBAC

Pour permettre aux utilisateurs AD existants d’utiliser RBAC, créez une instance d’objet dans Citrix Hypervisor, soit pour l’utilisateur AD directement, soit pour les groupes contenant :

Exécutez la commande suivante pour ajouter une nouvelle instance d’objet :

  xe subject-add subject-name=AD user/group
<!--NeedCopy-->

Pour attribuer un rôle RBAC à un sujet

Après avoir ajouté un objet, vous pouvez l’attribuer à un rôle RBAC. Vous pouvez faire référence au rôle par son UUID ou son nom :

Exécutez la commande :

  xe subject-role-add uuid=subject uuid role-uuid=role_uuid
<!--NeedCopy-->

Ou

  xe subject-role-add uuid=subject uuid role-name=role_name
<!--NeedCopy-->

Par exemple, la commande suivante ajoute un sujet avec l’uuid B9B3D03B-3D10-79D3-8ED7-A782C5EA13B4 au rôle Administrateur de pool :

  xe subject-role-add uuid=b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 role-name=pool-admin
<!--NeedCopy-->

Pour modifier le rôle RBAC d’un sujet

Pour modifier le rôle d’un utilisateur, il est nécessaire de le supprimer de son rôle existant et de l’ajouter à un nouveau rôle :

Exécutez les commandes suivantes :

  xe subject-role-remove uuid=subject_uuid role-name=role_name_to_remove
  xe subject-role-add uuid=subject_uuid role-name=role_name_to_add
<!--NeedCopy-->

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 d’utilisateur actif » disponible pour un administrateur ou un opérateur de pool.

Si vous supprimez le rôle Administrateur de pool d’un utilisateur, envisagez également de modifier le mot de passe racine du serveur et de faire pivoter le secret du pool. Pour plus d’informations, consultez Sécurité de la piscine.

Avertissement :

Lorsque vous ajoutez ou supprimez un sujet pool-admin, il peut s’écouler quelques secondes avant que tous les hôtes du pool acceptent les sessions ssh associées à ce sujet.

Audit

Le journal d’audit RBAC enregistre toutes les opérations effectuées par un utilisateur connecté.

  • Le message enregistre l’ID d’objet et le nom d’utilisateur associés à la session qui a appelé l’opération.

  • Si un sujet appelle une opération qui n’est pas autorisée, l’opération est enregistrée.

  • Toute opération réussie est également enregistrée. Si l’opération a échoué, le code d’erreur est enregistré.

Journal d’audit Commandes de l’interface de ligne de commande xe

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 facultatif ‘since’ est présent, il ne télécharge que les enregistrements à partir de ce point spécifique dans le temps.

  xe audit-log-get \[since=timestamp\] filename=output filename
<!--NeedCopy-->

Pour obtenir tous les enregistrements d’audit du pool

Exécutez la commande suivante :

  xe audit-log-get filename=/tmp/auditlog-pool-actions.out
<!--NeedCopy-->

Pour obtenir des enregistrements d’audit du pool à partir d’un horodatage précis à la milliseconde près

Exécutez la commande suivante :

  xe audit-log-get since=2009-09-24T17:56:20.530Z \
      filename=/tmp/auditlog-pool-actions.out
<!--NeedCopy-->

Pour obtenir des enregistrements d’audit du pool depuis un horodatage précis à la minute près

Exécutez la commande suivante :

  xe audit-log-get since=2009-09-24T17:56Z \
      filename=/tmp/auditlog-pool-actions.out
<!--NeedCopy-->
Utiliser le RBAC avec l’interface de ligne de commande