通过 ZFS 委托管理,可向特定用户、组或每个人分配精确的权限。支持两种类型的委托权限:
可以显式委托各个权限,如 create、destroy、mount、snapshot 等。
可以定义称为权限集的权限组。以后可以更新权限集,并且权限集的所有使用者都会自动获得更改。权限集以 @ 符号开头,长度不能超出 64 个字符。在 @ 符号之后,集名称中的其余字符与标准的 ZFS 文件系统名称具有同样的限制。
ZFS 委托管理可提供与 RBAC 安全模型类似的功能。ZFS 委托在管理 ZFS 存储池和文件系统方面具有以下优点:
迁移 ZFS 存储池时,权限跟随存储池。
提供动态继承性,以便您可以控制权限通过文件系统传播的方式。
可进行配置,以便只有文件系统的创建者可以销毁该文件系统。
可向特定文件系统委托权限。新创建的文件系统可以自动获得权限。
提供简单的 NFS 管理。例如,具有显式权限的用户可以在适当的 .zfs/snapshot 目录中通过 NFS 创建快照。
可考虑使用委托管理来分配 ZFS 任务。有关使用 RBAC 来管理常规 Oracle Solaris 管理任务的信息,请参见《系统管理指南:安全性服务》中的第 III 部分, “角色、权限配置文件和权限”。
使用池的 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 属性处于启用状态。