PVE 权限管理

发布于 2021-10-16  479 次阅读


为了让用户执行操作(例如列出、修改或删除 VM 配置的一部分),用户需要具有适当的权限。

Proxmox VE 使用基于角色和路径的权限管理系统。权限表中的条目允许用户、组或令牌在访问对象或路径时承担特定角色。这意味着这样的访问规则可以表示为(path, user, role) , (path, group, role)或(path, token, role)的三元组,其中角色包含一组允许的操作,以及表示这些操作的目标的路径。

角色

角色只是一个特权列表。Proxmox VE 带有许多可满足大多数需求的预定义角色。

  • Administrator:拥有所有权限
  • NoAccess:没有权限(用于禁止访问)
  • PVEAdmin:可以做大多数事情,但缺少修改系统设置的权限(Sys.PowerMgmt、Sys.Modify、Realm.Allocate)。
  • PVEAuditor : 只读访问
  • PVEDatastoreAdmin:创建和分配备份空间和模板
  • PVEDatastoreUser:分配备份空间和查看存储
  • PVEpoolAdmin : 分配池
  • PVESysAdmin:用户 ACL、审计、系统控制台和系统日志
  • PVETemplateUser:查看和克隆模板
  • PVEUserAdmin:用户管理
  • PVEVMAdmin:完全管理虚拟机
  • PVEVMUser : 查看、备份、配置 CD-ROM、VM 控制台、VM 电源管理

您可以在 GUI 上看到整套预定义角色。

特权

特权是执行特定操作的权利。为了简化管理,权限列表被分组到角色中,然后可以在权限表中使用。请注意,权限不能直接分配给用户和路径,而不是角色的一部分。

我们目前使用以下权限:

节点/系统相关权限

  • Permissions.Modify : 修改访问权限
  • Sys.PowerMgmt:节点电源管理(启动、停止、重置、关闭……)
  • Sys.Console:控制台访问节点
  • Sys.Syslog : 查看系统日志
  • Sys.Audit : 查看节点状态/配置、Corosync 集群配置和 HA 配置
  • Sys.Modify : 创建/删除/修改节点网络参数
  • Group.Allocate : 创建/删除/修改组
  • Pool.Allocate:创建/删除/修改池
  • Pool.Audit : 查看池
  • Realm.Allocate:创建/删除/修改身份验证领域
  • Realm.AllocateUser : 将用户分配给一个领域
  • User.Modify:创建/删除/修改用户访问和详细信息。

虚拟机相关权限

  • VM.Allocate:创建/删除新 VM 到服务器清单
  • VM.Migrate:将 VM 迁移到集群上的备用服务器
  • VM.PowerMgmt:电源管理(启动、停止、重置、关闭……)
  • VM.Console:控制台访问 VM
  • VM.Monitor : 访问 VM 监视器 (kvm)
  • VM.Backup : 备份/恢复虚拟机
  • VM.Audit : 查看 VM 配置
  • VM.Clone : 克隆/复制虚拟机
  • VM.Config.Disk : 添加/修改/删除磁盘
  • VM.Config.CDROM : 弹出/更换 CD-ROM
  • VM.Config.CPU : 修改 CPU 设置
  • VM.Config.Memory : 修改内存设置
  • VM.Config.Network : 添加/修改/删除网络设备
  • VM.Config.HWType : 修改模拟硬件类型
  • VM.Config.Options:修改任何其他 VM 配置
  • VM.Snapshot : 创建/删除 VM 快照

存储相关权限

  • Datastore.Allocate:创建/删除/修改数据存储,删除卷
  • Datastore.AllocateSpace:在数据存储上分配空间
  • Datastore.AllocateTemplate:分配/上传模板和 iso 图像
  • Datastore.Audit:查看/浏览数据存储
0 0 投票数
文章评分