Verwenden von RBAC mit der CLI
RBAC xe CLI-Befehle
Verwenden Sie die folgenden Befehle, um mit Rollen und Themen zu arbeiten.
So listen Sie alle verfügbaren definierten Rollen auf
Führen Sie den Befehl aus:xe role-list
Dieser Befehl gibt eine Liste der aktuell definierten Rollen zurück, zum Beispiel:
UUID (RO): 0165f154-ba3e-034e-6b27-5d271af109ba
name (RO): pool-admin
description (RO): Die Pool-Administratorrolle hat vollen Zugriff auf alle
Funktionen und Einstellungen, einschließlich des Zugriffs auf Dom0 und der Verwaltung von Subjekten,
Rollen und externe Authentifizierung
uid (RO): b9ce9791-0604-50cd-0649-09b3284c7dfd
Name (RO): Pool-Operator
description (RO): Die Rolle Poolbetreiber verwaltet Host- und Pool-weite Ressourcen;
einschließlich der Einrichtung von Speicher, der Erstellung von Ressourcenpools und der Verwaltung von Patches und
hohe Verfügbarkeit (HA).
UUID (RO): 7955168d-7bec-10ed-105f-c6a7e6e63249
Name (RO): vm-power-admin
description (RO): Die Rolle „VM Power Administrator“ hat vollen Zugriff auf VM und
-Vorlagenverwaltung und kann auswählen, wo VMs gestartet werden sollen und den dynamischen Speicher verwenden
Steuerungs- und VM-Snapshot-Funktionen
uid (RO): aaa00ab5-7340-bfbc-0d1b-7cf342639a6e
Name (RO): vm-admin
Beschreibung (RO): Die VM-Administratorrolle kann VMs und Vorlagen verwalten
UUID (RO): fb8d4ff9-310c-a959-0613-54101535d3d5
Name (RO): vm-operator
description (RO): Die VM-Operatorrolle kann VMs verwenden und mit VM-Konsolen interagieren
uid (RO): 7233b8e3-eacb-d7da-2c95-f2e581cdbf4e
name (RO): schreibgeschützt
description (RO): Die schreibgeschützte Rolle kann sich mit einfachem Lesezugriff anmelden
Hinweis:
Diese Liste der Rollen ist statisch. Sie können keine Rollen hinzufügen, entfernen oder ändern.
So zeigen Sie eine Liste aktueller Themen an
Führen Sie den folgenden Befehl aus:
xe-Fachliste
Dieser Befehl gibt eine Liste der Benutzer, ihre UUID und die Rollen zurück, denen sie zugeordnet sind:
UUID (RO): bb6dd239-1fa9-a06b-a497-3be28b8dca44
Subject-Identifier (RO): S-1-5-21-1539997073-1618981536-2562117463-2244
other-config (MRO): Subject-Name: example01user_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
Rollen (SRO): vm-admin
uid (RO): 4fe89a50-6a1a-d9dd-afb9-b554cd00c01a
Subject-Identifier (RO): S-1-5-21-1539997073-1618981536-2562117463-2245
other-config (MRO): Subject-Name: example02user_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-abgelaufen: false
Rollen (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: example03user_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-abgelaufen: false
Rollen (SRO): Pool-Operator
So fügen Sie ein Betreff zu RBAC hinzu
Um vorhandenen AD-Benutzern die Verwendung von RBAC zu ermöglichen, erstellen Sie eine Betreffinstanz innerhalb , entweder für den AD-Benutzer direkt oder für die enthaltenden Gruppen:
Führen Sie den folgenden Befehl aus, um eine neue Betreffinstanz hinzuzufügen:
xe subject-add subject-name = AD Benutzer/Gruppe
So weisen Sie einem Betreff eine RBAC-Rolle zu
Nachdem Sie ein Betreff hinzugefügt haben, können Sie es einer RBAC-Rolle zuweisen. Sie können auf die Rolle entweder durch ihre UUID oder den Namen verweisen:
Führen Sie den Befehl aus:
xe subject-role-add uuid = subject uuid role-uuid = role_uuid
Oder
xe subject-role-add uuid = subject uuid role-name = role_name
Mit dem folgenden Befehl wird beispielsweise der Rolle Pooladministrator ein Betreff mitb9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 der uuid hinzugefügt:
xe subject-role-add uuid = b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4 rollenname = pool-admin
So ändern Sie die RBAC-Rolle eines Betreffs
Um die Rolle eines Benutzers zu ändern, müssen sie aus der vorhandenen Rolle entfernt und einer neuen Rolle hinzugefügt werden:
Führen Sie die folgenden Befehle aus:
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
Der Benutzer muss sich abmelden und wieder anmelden, um sicherzustellen, dass die neue Rolle wirksam wird. Dies erfordert die Berechtigung „Aktive Benutzerverbindungen abmelden“, die einem Pool-Administrator oder Pool-Operator zur Verfügung steht.)
Warnung:
Wenn Sie ein Pool-Admin-Betreff hinzufügen oder entfernen, kann es einige Sekunden dauern, bis alle Hosts im Pool SSH-Sitzungen akzeptieren, die diesem Betreff zugeordnet sind.
Auditing
Das RBAC-Überwachungsprotokoll zeichnet alle Vorgänge auf, die von einem angemeldeten Benutzer ausgeführt werden.
-
Die Nachricht zeichnet die Betreff-ID und den Benutzernamen auf, die der Sitzung zugeordnet sind, die den Vorgang aufgerufen hat.
-
Wenn ein Betreff eine Operation aufruft, die nicht autorisiert ist, wird der Vorgang protokolliert.
-
Jede erfolgreiche Operation wird ebenfalls aufgezeichnet. Wenn der Vorgang fehlgeschlagen ist, wird der Fehlercode protokolliert.
Überwachungsprotokoll xe CLI-Befehle
Mit dem folgenden Befehl werden alle verfügbaren Datensätze der RBAC-Überwachungsdatei im Pool in eine Datei heruntergeladen. Wenn der optionale Parameter ‘since’ vorhanden ist, lädt er nur die Datensätze von diesem bestimmten Zeitpunkt herunter.
xe audit-log-get [since = timestamp] Dateiname = Ausgabedateiname
So erhalten Sie alle Überwachungsdatensätze aus dem Pool
Führen Sie den folgenden Befehl aus:
xe audit-log-get filename = / tmp/auditlog -pool-actions.out
So erhalten Sie Audit-Datensätze des Pools seit einem präzisen Millisekunden-Zeitstempel
Führen Sie den folgenden Befehl aus:
xe audit-log-get seit = 2009-09-24T 17:56:20 .530Z \
filename = / tmp/auditlog -pool-actions.out
So erhalten Sie Auditaufzeichnungen des Pools seit einem genauen Minutenzeitstempel
Führen Sie den folgenden Befehl aus:
xe audit-log-get seit = 2009-09-24T 17:56 Z \
filename = / tmp/auditlog -pool-actions.out