Перейти к содержанию

Администрирование пользователей#

Определение пользователей, групп, ролей и разрешений позволяет контролировать доступ к серверным узлам и ресурсным пулам Numa vServer, а также контролировать, какие действия они могут выполнять.

При установке Numa vServer автоматически добавляется одна учетная запись пользователя – root. Этой учетной записи присваивается роль локального суперпользователя (Local Super User, LSU).

LSU является особой учетной записью, предназначенной для администрирования системы и имеет все права и полномочия.

LSU проходит аутентификацию/авторизацию только в Numa vServer и не требует внешней службы аутентификации. Если внешний сервис аутентификации выйдет из строя, LSU всё равно сможет войти и управлять системой. Также LSU всегда имеет доступ к физическому серверу Numa vServer через SSH.

Другие учётные записи пользователей могут быть созданы путем добавления аккаунтов из FreeIPA, Active Directory или LDAP с помощью команд интерфейса «xe» (далее - CLI или xe). Если перечисленные сервисы не используются, доступной остаётся только учетная запись локального суперпользователя.

Примечание

При создании новых пользователей Numa vServer не назначает автоматически созданным учетным записям роли согласно RBAC. Таким образом, эти учетные записи не будут иметь доступа к пулу до тех пор, пока им не будет назначена соответствующая роль.

Аутентификация пользователей с использованием Active Directory#

При необходимости иметь несколько пользовательских учетных записей на серверном узле или в ресурсном пуле, можно использовать для аутентификации сервер Active Directory (AD). Это позволяет пользователям Numa vServer авторизоваться на серверах пула Numa vServer, используя свои учетные данные домена в Windows.

Пользователи Active Directory могут использовать команды xe (используя аргументы -u (username) и -pw (password)) для подключения к серверу. Аутентификация осуществляется отдельно для каждого пула. Доступ контролируется с использованием так называемых субъектов. Субъект в терминологии Numa vServer соответствует записи на сервере каталогов AD/LDAP/FreeIPA (соответствующей пользователю или группе). Когда внешняя аутентификация доступна, учетные данные используются для создания сеанса. Сначала проверяются учетные данные локального пользователя (в случае, если сервер каталогов недоступен), а затем список субъектов. Чтобы разрешить доступ к чему-то, необходимо создать запись для пользователя или группы, которым будет предоставлен этот доступ. Для этого используются команды xe, которые описаны далее.

Numa vServer позволяет использовать авторизационные данные Active Directory для учетных записей Numa vServer. Для этого, Numa vServer отправляет учетные данные Active Directory на контроллер домена Active Directory.

При добавлении в Numa vServer пользователи и группы Active Directory становятся субъектами Numa vServer. Когда субъект зарегистрирован в Numa vServer, пользователи/группы проходят проверку подлинности в Active Directory при входе в систему. Таким образом, отпадает необходимость квалифицировать имя пользователя с именем домена.

Примечание

По умолчанию, если домен пользователя не был уточнён (например, в виде «MyDomain\MyUser» или «myuser@mydomain.com»), Numa vServer попытается осуществить вход пользователей в серверы аутентификации Active Directory, используя домен, подключенный в настоящее время. Исключением из этого правила является учетная запись LSU, которая всегда аутентифицируется сначала локально (то есть на Numa vServer).

Процесс внешней аутентификации происходит следующим образом:

  1. Учетные данные, при подключении к серверу, передаются на контроллер домена Active Directory для аутентификации.
  2. Контроллер домена проверяет полномочия. Если они являются недействительными, аутентификация тут же прекращается.
  3. Если учетные данные действительны, контроллер Active Directory запрашивает получение идентификатора и группы согласно учетным данным.
  4. Если идентификатор субъекта совпадает с одним из хранящихся в Numa vServer, аутентификация успешно завершается.

При подключении к домену разрешается аутентификация в Active Directory для пула. Однако когда пул подключен к домену, только пользователи из этого домена (или домена, с которым он имеет доверенные отношения) могут подключаться к этому пулу.

Предупреждение

Ручная настройка конфигурации DNS физического интерфейса сети с настроенным сервисом DHCP может привести к сбоям в интеграции Active Directory и, следовательно, к сбоям в аутентификации пользователей.

Настройка аутентификации Active Directory#

Numa vServer поддерживает использование серверов Active Directory, начиная с версии Windows 2008.

Для аутентификации в Active Directory серверного узла Numa vServer необходимо, чтобы использовались одни и те же DNS как для Active Directory сервера (настроенного для разрешения в совместимости), так и для серверного узла Numa vServer. В некоторых конфигурациях сервер Active Directory может сам предоставить сервис DNS. Это может быть достигнуто либо с помощью DHCP, чтобы предоставить IP-адрес и список DNS-серверов в Numa vServer, либо путем установки значений в объектах физического интерфейса.

Внимание!

Доменные имена серверных узлов Numa vServer должны быть уникальными в течение всего времени нахождения Numa vServer в домене.

Следует обратить внимание на следующие особенности:

  • Numa vServer записывает входы в AD с использованием данного имени сервера в базу данных AD. Поэтому, если два сервера узла имеют одинаковое имя и подключены к одному и тому же домену, второй перезапишет вход в AD первого, независимо от того, находятся они в одном или разных пулах, в результате чего аутентификация на первом перестанет работать. Можно использовать одно и то же доменное имя на двух серверных узлах Numa vServer, пока они подключены к разным AD доменам;
  • серверные узлы могут находиться в разных часовых поясах. Для обеспечения корректной синхронизации можно использовать одни и те же NTP-сервера для пула Numa vServer и для Active Directory сервера;
  • пулы со смешанной аутентификацией не поддерживаются (то есть невозможно иметь пул, где одни сервера настроены для использования Active Directory, а другие – нет);
  • интеграция Active Directory в Numa vServer происходит с использованием протокола Kerberos для соединения с серверами Active Directory. Как следствие, Numa vServer не поддерживает взаимодействие с серверами Active Directory без участия Kerberos;
  • чтобы внешняя аутентификация с использованием Active Directory проводилась успешно, важно, чтобы системное время на серверных узлах Numa vServer было синхронизировано с системными часами на сервере Active Directory. Это проверяется, когда Numa vServer присоединяется к домену Active Directory, и если разница превышает допустимые значения, то аутентификация завершится ошибкой.

Примечание

Доменные имена должны состоять исключительно из букв и цифр длиной не менее одной буквы и не более 63 символов.

При добавлении в пул нового серверного узла после того, как был включен механизм аутентификации Active Directory, администратору будет предложено настроить на добавляемом сервере Active Directory. При появлении запроса на ввод учетных данных следует ввести учетные данные Active Directory с правами, достаточными для добавления серверов в этом домене.

Интеграция Active Directory#

Необходимо убедиться в том, что сетевые порты для исходящего трафика, перечисленные в таблице ниже, открыты в настройках межсетевого экрана Numa vServer.

Таблица – Порты, необходимые для интеграции Active Directory

Порт Протокол Назначение
53 UDP/TCP DNS
88 UDP/TCP Kerberos 5
123 UDP NTP
137 UDP NetBIOS Name Service
139 TCP NetBIOS Session (SMB)
389 UDP/TCP LDAP
445 TCP SMB поверх TCP
464 UDP/TCP Изменение пароля машины
3268 TCP Global Catalog Search

Примечание

Для просмотра правил межсетевого экрана используется команда:

iptables –nL

Управление паролем учетной записи компьютера для интеграции AD#

Как и на клиентских машинах под управлением Windows, Numa vServer автоматически обновляет пароль учетной записи компьютера. Numa vServer обновляет пароль каждые 30 дней или в соответствии с политикой обновления пароля учетной записи компьютера на сервере AD.

Включение и отключение внешней системы аутентификации с использованием AD#

Для включения внешней аутентификации с помощью Active Directory выполните следующую команду:

xe pool-enable-external-auth auth-type=AD service-name=<full-qualified-domain> config:user=<username> config:pass=<password>
Указанный пользователь должен иметь привилегии для добавления и удаления компьютеров или рабочих станций, что по умолчанию разрешено администраторам доменов.

Если в сети, используемой Active Directory и серверными узлами Numa vServer, не используется DHCP, можно использовать следующие подходы к настройке DNS:

  • настроить порядок поиска суффиксов домена DNS для работы с адресами, не являющимися FQDN:
    xe pif-param-set uuid=<pif-uuid_in_the_dns_subnetwork> “other-config:domain=suffix1.com suffix2.com suffix3.com”
    
  • назначить DNS-сервер для серверов Numa vServer:
    xe pif-reconfigure-ip mode=static dns=<dnshost> ip=<ip> gateway=<gateway> netmask=<netmask> uuid=<uuid>
    
  • вручную назначить для интерфейса управления PIF-объект из той же сети, что и DNS-сервер:
    xe host-management-reconfigure pif-uuid=<pif_in_the_dns_subnetwork>
    

Примечание

Внешняя аутентификация является параметром, задаваемым отдельно для каждого серверного узла. Тем не менее, рекомендуется включать или отключать это параметр для всего пула – в этом случае при обработке сбоя на любом сервере и выполнении любых требуемых откатов состояний будет гарантироваться, что установленная конфигурация подходит для всего пула.

Для проверки параметров серверного узла и определения состояния внешней аутентификации можно использовать команду xe host-param-list, проверяя значения соответствующих полей.

Для отключения внешней аутентификации используется команда:

xe pool-disable-external-auth

Пользовательская аутентификация#

Для разрешения доступа пользователя к серверному узлу Numa vServer необходимо добавить запись о субъекте доступа для этого пользователя, либо для группы, в которой он находится (вложенность групп проверяется в обычном порядке, например, если добавить разрешение для группы А, содержащей группу B, то пользователь из группы В будет иметь это разрешение).

Для управления разрешениями пользователей в Active Directory можно создать единую группу, а затем работать с ней, добавляя и удаляя пользователей. Можно добавлять и удалять отдельных пользователей, или сочетать использование отдельных пользователей и групп. Список субъектов может управляться с помощью интерфейса командной строки, как описано ниже.

При аутентификации пользователя, учетные данные сначала проверяются на соответствие учетной записи локального суперпользователя, что позволяет восстановить систему, если сервер AD вышел из строя. Если учетные данные (имя пользователя, пароль) не совпадают, то запрашивается аутентификация на сервере AD – если соединение с сервером AD происходит успешно, информация пользователя будет передана туда и проверен на соответствие списку субъектов, имеющемуся там. Если совпадение не будет найдено, либо не получится установить соединение с сервером AD, в доступе пользователю будет отказано. Проверка по списку субъектов считается успешной, если пользователь или его группа (возможно, в составе вложенной группы) имеются в списке субъектов доступа.

Внимание

При использовании групп Active Directory для предоставления доступа для пользователей с ролью Администратора пула, которым необходим доступ к хосту по SSH, число пользователей в группе Active Directory не должно превышать 500.

Управление пользовательским доступом к серверному узлу#

Для добавления в список AD субъекта доступа к серверному узлу существует команда:

xe subject-add subject-name=<entity name>
В качестве entity name может использоваться имя пользователя или название группы, которому (которой) требуется предоставить доступ. Также можно в необязательном порядке указать домен (например, «<testad\user1>», а не просто «<user1>»), если это требуется для однозначности.

Для запрета пользователю доступа к серверному узлу необходимо выполнить следующую последовательность действий:

  • найти идентификатор субъекта пользователя. Это пользователь или группа, содержащая пользователя (удаление группы запрещает доступ всем пользователям этой группы, если они не были также указаны в списке субъектов непосредственно). Для нахождения идентификатора необходимо использовать команду возвращающую список пользователей:

    xe subject-list
    
    Для облегчения поиска имеется возможность задавать фильтры для выводимых результатов поиска. Следующая команда выведет (при условии наличия) информацию о пользователе user1 в домене testad:
    xe subject-list other-config:subject-name='<testad\user1>'
    

  • используя найденный идентификатор (UUID), можно удалить запись о разрешении доступа пользователю при помощи команды:

    xe subject-remove subject-uuid=<subject-uuid>
    

Для принудительного завершения текущей сессии конкретного пользователя используется команда:

xe session-subject-identifier-logout subject-identifier=<subject-id>

Для принудительного завершения текущих сессий всех пользователей, работающих в системе в настоящий момент, используется команда:

xe session-subject-identifier-logout-all
Если принудительно не завершить сессии пользователей, доступ которым был запрещён, они будут иметь доступ к серверному до завершения своей сессии.

Вывод из домена Active Directory#

Примечание

Когда администратор принимает решение покинуть домен (то есть отключить проверку подлинности Active Directory и отсоединить пул или сервер от этого домена), все пользователи, прошедшие аутентификацию в пуле или на сервере с учетными данными Active Directory, будут отключены.

Чтобы покинуть домен AD, следует выполнить команду:

xe pool-disable-external-auth
Указав идентификатор UUID пула, если требуется.

Примечание

Вывод севера из домена не влечёт удаление серверных записей из базы данных Active Directory.

Управление доступом на основе ролей#

Подсистема управления доступом на основе ролей (Role Based Access Control, RBAC) позволяет назначить пользователей, роли и полномочия для управления доступом к Numa vServer и к действиям, которые смогут выполнять получившие доступ. RBAC связывает пользователя (или группу пользователей) с определенной ролью (именованный набор прав доступа(permissions)). Роли, в свою очередь, имеют соответствующие полномочия для выполнения определенных операций в Numa vServer.

Полномочия не назначаются пользователям напрямую. Пользователи получают права доступа через назначенные им роли. Следовательно, управление полномочиями отдельных пользователей становится вопросом назначения пользователю соответствующей роли, что упрощает общие операции. Numa vServer ведёт список авторизованных пользователей и их ролей.

Подсистема управления доступом на основе ролей позволяет ограничить операции, которые могут выполнять разные группы пользователей, что снижает вероятность сбоя от действий неопытного пользователя.

Также RBAC предоставляет функцию журнала аудита.

Схема предоставления прав доступа на основе RBAC

RBAC зависит от служб аутентификации Active Directory, LDAP и FreeIPA. В частности, Numa vServer хранит список авторизованных пользователей, основанных на имеющихся в них записях о пользователях и группах. В результате необходимо присоединить ресурсный пул или серверный узел Numa vServer к домену и добавить учетные записи, прежде чем администратор сможет непосредственно назначать роли.

Локальный суперпользователь (LSU) или root – это особая учетная запись пользователя, используемая для системного администрирования, обладающая всеми правами и полномочиями. В Numa vServer учётная запись пользователя root создаётся по умолчанию при установке. Аутентификация c этой учётной записью проверяется только средствами Numa vServer, а не внешней службы аутентификации, поэтому локальный суперпользователь сможет войти и управлять системой даже при сбое соединения с сервером службы аутентификации. Локальный суперпользователь всегда может получить доступ к серверному узлу Numa vServer локально или по SSH (при условии, что доступ по SSH не отключен).

Типовой процесс настройки системы управления доступа на основе ролей в Numa vServer выглядит следующим образом:

Пользовательские роли#

Numa vServer поставляется с шестью предустановленными ролями:

  • Администратор пула (Pool Admin) – та же, что и локальный суперпользователь, роль позволяет выполнять все операции.
  • Оператор пула (Pool Operator) – роль позволяет делать всё кроме добавления/удаления пользователей и изменения их ролей. Данная роль предназначена, в основном, управление серверными узлами и пулом (создание хранилищ, настройка пулов, управление сетями и т. д.)
  • Администратор виртуальных машин с расширенными полномочиями (VM Power Admin) – роль создаёт и управляет виртуальными машинами. Эта роль ориентирована на создание и обслуживание виртуальных машин, которые используются администраторами и операторами ВМ.
  • Администратор виртуальных машин (VM Admin) – роль, схожая с предыдущей, но не позволяющая производить миграцию виртуальных машин или создавать снимки состояния ВМ.
  • Оператор виртуальных машин (VM Operator) – по аналогии с ролью администратора ВМ, но не имеет полномочий на создание/удаление ВМ, однако позволяет запускать/останавливать операции жизненного цикла ВМ.
  • Только для чтения (Read Only) – роль, позволяющая просматривать пул и данные о производительности.

Примечание

Локальный суперпользователь всегда будет иметь роль «Pool Admin».

В данной версии Numa vServer отсутствует возможность добавления или удаления ролей.

Предупреждение

Нельзя назначить роль Pool Admin группе служб аутентификации, содержащей более 500 членов, если предполагается, что в дальнейшем эти пользователи будут иметь доступ по SSH.

Для знакомства с полномочиями, доступными для каждой роли, и получения более подробной информации об операциях, доступных для каждого разрешения (см. раздел Описание ролей и разрешений RBAC).

Всем пользователям Numa vServer должны быть назначены соответствующие им роли. Пользователю может быть назначено множество ролей; в этом случае пользователь будет иметь объединение всех их разрешений.

Роль пользователя может быть изменена двумя способами:

  • изменение субъекта и назначение роли (доступно только Администратору пула);
  • изменение роли содержащей пользователя группы в AD.

Описание ролей и разрешений RBAC#

Таблица ниже суммирует полномочия доступные для каждой роли. Более подробные сведения представлены в таблице Дополнительные сведения о полномочиях ролей.

Таблица – Полномочия для базовых ролей

Полномочие Pool Admin Pool Operator VM Power Admin VM Admin VM Operator
Назначение и изменение ролей пользователей X
Резервное копирование/восстановление сервера X
Импорт/экспорт OVF-/OVA- контейнеров и образов дисков ВМ X
Установка количества ядер на сокет X X X X
Преобразование виртуальных машин с помощью диспетчера преобразований X
Блокировка портов коммутатора X X
Настройка multipathing X X
Отключение активных пользователей от управления (завершение сеанса работы) X X
Создание и снятие оповещений для пользователей X X
Отмена заданий любого пользователя X X
Управление пулом X X
Живая миграция X X X
Хранилище для живой миграции X X X
Расширенные операции по управлению ВМ X X X
Создание и удаление ВМ X X X X
Изменение подключенных CD образов в ВМ X X X X X
Изменение состояния питания ВМ X X X X X
Доступа к консоли ВМ X X X X X
Отмена собственных задач X X X X X
Чтение журнала аудита X X X X X
Подключение к пулу и чтение метаданных пула X X X X X
Настройка vGPU X X
Просмотр конфигурации vGPU X X X X X
Доступ к конфигурационному диску (только для ВМ CoreOS) X
Управление контейнером X
Запланированные моментальные снимки X X X
Запланированные снимки X X
Настройка проверки работоспособности X X
Просмотр результатов и настроек проверки работоспособности X X X X X
Настройка отслеживания измененных блоков X X X X
Просмотр списка измененных блоков X X X X X

Пользователю с ролью read-only доступны следующие полномочия:

  • Отмена собственных задач
  • Чтение журнала аудита
  • Подключение к пулу и чтение метаданных пула
  • Просмотр конфигурации vGPU
  • Просмотр результатов и настроек проверки работоспособности

Таблица – Дополнительные сведения о полномочиях ролей

Полномочие Детали Примечание
Назначение и изменение ролей пользователей добавить/удалить пользователей

назначить/удалить роль

включение и отключение интеграции с AD (присоединение к домену)
Предупреждение. Эта роль позволяет пользователю отключить интеграцию с Active Directory
Доступ к серверной консоли через SSH доступ с локальной консоли сервера или через SSH При локальном администрировании администратор может произвольно изменить конфигурацию всей системы, в том числе назначения ролей
Резервное копирование/восстановление сервера резервное копирование и восстановление серверов

резервное копирование и восстановление метаданных пула
Возможность восстановления резервной копии позволяет восстановить изменения конфигурации ролей
Импорт/экспорт OVF-/OVA- контейнеров и образов дисков ВМ импорт OVF- и OVA-контейнеров

импорт образов дисков

экспорт виртуальных машин как OVF-/OVA-контейнеров
Установка количества ядер на сокет установка количества ядер на сокет для виртуальных процессоров ВМ Это разрешение позволяет пользователю указать топологию для виртуальных процессоров ВМ
Преобразование виртуальных машин с помощью диспетчера преобразований преобразование виртуальных машин VMware в виртуальные машины Numa vServer Это разрешение позволяет пользователю преобразовывать ВМ из VMware в Numa vServer путем копирования образов виртуальных машин VMware в среду Numa vServer
Блокировка портов коммутатора контроль трафика в сети Это разрешение позволяет пользователю по умолчанию блокировать весь трафик в сети или определять конкретные IP-адреса, с которых виртуальной машине разрешено отправлять трафик
Настройка multipathing включение/отключение multipathing
Отключение активных пользователей от управления (завершение сеанса работы) возможность отключения вошедших в систему пользователей
Создание и снятие оповещений для пользователей конфигурация предупреждений, когда использование ресурсов пересекает определенные пороги

удаление оповещений
Предупреждение. Пользователь с этим разрешением может отклонить оповещения для всего пула

Примечание. Возможность просмотра предупреждений является частью подключения к пулу и чтения всех метаданных пула
Отмена заданий любого пользователя отмена любого запущенного задания пользователя Это разрешение позволяет пользователю запрашивать у Numa vServer отмену выполняемой задачи, инициированной любым пользователем
Управление пулом установить свойства пула (название, SR по умолчанию)

включить, отключить и настроить механизм HA

установить приоритеты перезапуска механизма HA для каждой ВМ

конфигурация DR и выполнение DR failover, failback и test failover

включить, отключить и настроить балансировку рабочей нагрузки (WLB)

добавить и удалить сервер из пула

аварийная смена мастера

аварийная смена адреса мастера

аварийное восстановление подчинённых хостов

назначить нового мастера

управление пулами

настройка свойств сервера

настройка ведения журнала на сервере

включение и отключение серверов

завершение работы, перезагрузка и включение серверов

перезапуск набора инструментов

отчеты о состоянии системы

динамическая миграция всех виртуальных машин на сервере на другой

сервер из-за режима обслуживания или высокой доступности

настройка интерфейс управления сервером и вторичных интерфейсов

отключение управление сервером

удаление crashdumps

добавление, редактирование и удаление сетей

добавление, редактирование и удаление PBD/PIF/VLAN/Bonds/SR

добавление, редактирование и удаление секретов
Это разрешение включает в себя все действия, необходимые для поддержки пула

Примечание. Если интерфейс управления не работает, никакие пользователи не могут проходить проверку подлинности, кроме локальных пользователей
Живая миграция перенос виртуальных машин с одного хоста на другой, когда виртуальные машины находятся в хранилище, совместно используемом обоими хостами
Хранилище для живой миграции миграция с одного хоста на другой, если виртуальные машины не находятся в хранилище, совместно используемом двумя хостами

перемещение виртуальных дисков (VDI) из одного SR в другой SR
Расширенные операции по управлению ВМ настройка памяти ВМ (через динамическое управление памятью)

создание снимка виртуальной машины с памятью, создание снимков виртуальной машины и откат виртуальных машин

миграция виртуальных машин

запуск виртуальных машин, в том числе с указанием физического сервера

возобновление работы ВМ
Это разрешение предоставляет уполномоченному достаточно прав для запуска ВМ на другом сервере, если они не удовлетворены выбранным сервером Numa vServer
Создание и удаление ВМ создание и удаление ВМ

клонирование/копирование виртуальных машин

добавление, удаление и настройка виртуальных дисков/CD устройств

добавление, удаление и настройка виртуальных сетевых устройств

импорт/экспорт файлов XVA

изменение конфигурации виртуальных машин

резервное копирование и восстановление сервера

Примечание. Роль VM Admin может импортировать файлы XVA только в пул с общим SR. Роль VM Admin не имеет достаточных прав для импорта файла XVA на хост или в пул без общего хранилища
Изменение подключенных CD образов в ВМ установка/извлечение CD
Изменение состояния питания ВМ запуск виртуальных машин

выключение виртуальных машин

перезагрузка виртуальных машин

приостановка виртуальных машин

возобновление работы виртуальных машин
Это разрешение не включает start_on, resume_on и migrate, которые являются частью разрешения расширенных операций виртуальной машины
Доступ к консоли ВМ взаимодействие с консолью виртульных машин Это разрешение не позволяет пользователю просматривать серверную консоль
Отмена собственных задач позволяет пользователю отменять собственные задачи
Чтение журнала аудита позволяет просматривать журнал аудита
Подключение к пулу и чтение метаданных пула подключение к пулу

просмотр метаданных пула

просмотр данных о производительности

просмотр зарегистрированных пользователей

просмотр пользователей и ролей

просмотр сообщений

регистрация и получение событий
Настройка vGPU настройка политики размещения в пуле

назначение виртуального графического процессора виртуальной машине

удаление виртуального графического процессора виртуальной машины

изменение разрешенных типов виртуальных графических процессоров

создание, удаление и назначение групп GPU
Просмотр конфигурации vGPU просмотр графических процессоров, политик размещения графических процессоров и назначений vGPU
Доступ к конфигурационному диску (только для ВМ CoreOS) доступ к драйверу конфигурации виртуальной машины

изменение параметров облачной конфигурации
Управление контейнером запуск

остановка

пауза

резюме

доступ к информации о контейнере
Запланированные моментальные снимки создание и удаление моментальных снимков виртуальных машин
Запланированные снимки добавление виртуальных машин в расписания снимков

удаление виртуальные машины из расписания снимков

добавление расписания снимков

изменение расписания снимков

удаление расписания снимков
Настройка проверки работоспособности включение проверки работоспособности

отключение проверки работоспособности

обновление настроек проверки

работоспособности

ручная загрузка отчета о состоянии сервера
Просмотр результатов и настроек проверки работоспособности просмотр результатов проверки

работоспособности

просмотр настроек регистрации проверки работоспособности
Настройка отслеживания измененных блоков включение отслеживания измененных блоков

отключение отслеживания измененных блоков

уничтожение данных связанных со снимками и сохранение метаданных

получение информации о соединении NBD для VDI
Просмотр списка измененных блоков сравнение двух снимков VDI и перечисление блоков, которые изменились

Использование RBAC через интерфейс CLI#

Для вывода списка доступных ролей в Numa vServer используется команда:

xe role-list
xe role-list

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

Список ролей статичен, нельзя добавить новые роли, удалить или изменить старые.

Для отображения списка текущих субъектов доступа используется команда xe subject-list, возвращающая список пользователей, их идентификаторы и роли, если такие присутствуют в системе.

Добавление субъекта в систему RBAC#

Для того чтобы включить существующих в AD пользователей в систему RBAC, необходимо создать экземпляр субъекта в Numa vServer, либо для пользователя AD непосредственно – либо напрямую для одного из пользователей, прописанных в AD, либо для одной из содержащих его групп:

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

Назначение роли созданному субъекту#

Для назначения субъекту роли используется его идентификатор UUID:

xe subject-role-add uuid=<subject_uuid> role-uuid=<role_uuid>

или имя:

xe subject-role-add uuid=<subject_uuid> role-name=<role_name>

Пример. Следующая команда назначает пользователю с идентификатором UUID, равным b9b3d03b-3d10-79d3-8ed7-a782c5ea13b4, роль «Pool Administrator»:

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

Изменение роли субъекта доступа#

Изменение роли пользователя, в частности, необходимо для снятия с него текущей роли (поскольку в любой момент времени хотя бы одна роль должна быть назначена). Используются следующие команды:

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>

Чтобы убедиться, что новая роль вступила в силу, пользователь должен выйти из системы и снова пройти авторизацию (чтобы иметь возможность сделать это для другого пользователя принудительно, необходимо иметь разрешение на отсоединение активных пользователей (Logout Active User Connections), что доступно только Администраторам пула или Операторам пула).

После добавления или удаления субъекта с ролью Администратора пула может возникнуть задержка на несколько секунд для SSH-сессий, связанных с этим субъектом, на всех хостах пула.

Аудит RBAC#

Журнал аудита RBAC записывает все операции, предпринятые вошедшим в систему пользователем. Запись аудита будет явно содержать идентификатор субъекта и имя пользователя, ассоциированное с сессией, которая вызвала операцию.

В случае успешного выполнения какой-либо операции, фиксируется факт успеха; если операция не удалась, записывается также код ошибки.

Всегда фиксируется факт запроса выполнения операций, для осуществления которых субъект не имеет разрешения.

Команды CLI, связанные с журналом аудита#

Следующая команда выгружает в файл все имеющиеся записи файла аудита RBAC пула. Если необязательный параметр since присутствует, то выгружаются только записи позднее указанной в этом параметре метки времени/даты.

xe audit-log-get [since=<timestamp>] filename=<output_filename>

Следующая команда позволяет выгрузить все записи аудита для пула:

xe audit-log-get filename=/var/data/auditlog-pool-actions.out

Для получения записей журнала аудита пула, датированных позднее точной миллисекундной метки, используется команда:

xe audit-log-get since=2019-09-24T17:56:20.530Z filename=/var/data/auditlog-pool-actions.out

Для получения записей журнала аудита пула, датированных позднее метки с точностью до минуты, используется команда:

xe audit-log-get since=2019-09-24T17:56Z filename=/var/data/auditlog-pool-actions.out

Расчёт ролей для сессии в Numa vServer#

Роль каждого конкретного субъекта в каждой сессии работы рассчитывается следующим образом.

  • субъект проходит аутентификацию через сервер Active Directory для того, чтобы проверить, какие содержащие субъект группы также имеются в списках AD;
  • Numa vServer заверяет набор ролей, отведённых субъекту и содержащим его группам;
  • субъект, входящий в несколько групп, наследует все доступные им разрешения.

Схема получения окончательного набора ролей для сессии показана на рисунке ниже.

Схема получения окончательного набора ролей для сессии

На этой иллюстрации, поскольку Subject2 (из группы Group2) является Оператором пула и пользователь User1 является членом группы Group2, когда Subject3 (пользователь User1) пытается войти, он наследует роли как Subject3 (роль «Оператор ВМ»), так и группы Group2 (роль «Оператор пула»). Поскольку роль «Оператор пула» выше по числу разрешений, в результате ролью субъекта Subject3 (User1) становится «Оператор пула», а не «Оператор ВМ».