為了讓用戶執行操作(例如列出、修改或刪除 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:查看/瀏覽數據存儲