Эта функциональная возможность позволяет раздавать уточненные разрешения конкретным пользователям, группам или всем. Поддерживаются два типа делегирования разрешений:
Индивидуальные разрешения – например create, destroy, mount, snapshot и т. п. – можно задавать в явном виде.
Можно определять группы разрешений, которые называются наборами разрешений. Набор разрешений можно впоследствии изменить, и все потребители этого набора автоматически получат это изменение. Наборы разрешений начинаются с символа @ и не могут быть длиннее 64 символов. Символы, идущие в имени набора после символа@, подчиняются тем же ограничениям, что и обычные имена файловой системы ZFS.
Делегированное администрирование в ZFS предоставляет функциональные возможности, подобные модели безопасности RBAC. Модель делегирования в ZFS предоставляет следующие преимущества для администрирования пулов устройств хранения данных и файловых систем:
Разрешения следуют за пулом устройств хранения ZFS при переходе пула.
Предоставляет динамическое наследование, позволяющее контролировать распространение разрешений по файловым системам.
Можно настроить их так, что только создатель файловой системы сможет удалить эту файловую систему.
Можно распространять разрешения на конкретные файловые системы. Вновь созданные файловые системы могут автоматически получать разрешения.
Такая модель обеспечивает простоту администрирования NFS. Например, пользователь с явными разрешениями может создать моментальный снимок содержимого NFS в соответствующем каталоге .zfs/snapshot .
Рассмотрите возможность использования делегированного администрирования для распределения задач ZFS. Дополнительную информацию об использовании RBAC для управления общими задачами администрирования Solaris приведено в разделе Часть III, Roles, Rights Profiles, and Privileges, в System Administration Guide: Security Services.
Можно разрешить или запретить делегирование администрирования с помощью настройки свойства пула delegation. Например:
# zpool get delegation users NAME PROPERTY VALUE SOURCE users delegation on default # zpool set delegation=off users # zpool get delegation users NAME PROPERTY VALUE SOURCE users delegation off local |
По умолчанию свойство delegation разрешает использовать эти функции.