====== 第十一章:用户管理 ====== 原文链接:https://pve.proxmox.com/pve-docs/chapter-pveum.html 最后更新:2026-02-25 ===== 概述 ===== Proxmox VE提供完整的用户和权限管理系统,支持多种认证方式和基于角色的访问控制(RBAC)。 ===== 用户管理 ===== === 用户概念 === * 用户ID - 用户名@域 * 认证域 - 用户来源 * 用户属性 - 详细信息 === 创建用户 === 通过Web界面: 1. 数据中心 → 权限 → 用户 2. 点击"添加" 3. 输入信息 4. 保存 === 命令行 === pveum user add admin@pve --password pveum user add john@ldap --realm ldap ===== 认证域 ===== === 支持的认证域 === * Linux PAM - 系统用户 * Proxmox VE - 内置认证 * LDAP - 目录服务 * Active Directory - Windows域 * OpenID Connect - OAuth2/OIDC === 配置LDAP === pveum realm add ldap --base-dn "dc=example,dc=com" --server ldap.example.com === 配置AD === pveum realm add ad --domain example.com --server dc.example.com === 配置OpenID === pveum realm add oidc --issuer-url https://accounts.google.com --client-id XXXX ===== 用户组 ==== === 创建组 === pveum group add developers pveum group add admins === 添加用户到组 === pveum user modify john@pve --group developers === 组权限 === 组权限可以批量分配,简化管理。 ===== 角色 ==== === 预定义角色 === * Administrator - 完全权限 * PVEAuditor - 只读 * PVEVMAdmin - VM管理 * PVEVMUser - VM用户 * PVEDatastoreAdmin - 存储管理 === 自定义角色 === 创建自定义角色: pveum role add MyRole --privs "VM.Audit VM.PowerMgmt" ===== 权限管理 ==== === 权限分配 === 分配权限: pveum acl modify /vms -user john@pve -role PVEVMAdmin pveum acl modify /vms -group developers -role PVEVMUser === 权限路径 === * / - 数据中心 * /vms - 所有虚拟机 * /vms/100 - 特定虚拟机 * /storage - 存储 * /nodes - 节点 * /access - 访问管理 === 权限继承 === * 路径继承 * 组继承 * 覆盖规则 ===== API令牌 ==== === 创建令牌 === pveum user token add john@pve mytoken === 使用令牌 === curl -H "Authorization: PVEAPIToken=john@pve!mytoken=UUID" https://pve:8006/api2/json/... === 令牌权限 === * 分离权限 - 独立权限 * 完全权限 - 继承用户权限 ===== 双因素认证 ==== === TOTP === 时间一次性密码: # 通过Web界面配置 === U2F === 通用第二因素: # 通过Web界面配置 === 恢复密钥 === 一次性恢复密钥: # 通过Web界面生成 ===== 资源池 ==== === 创建资源池 === pveum pool add mypool === 添加资源 === pveum pool add mypool --vms 100,101 pveum pool add mypool --storage local === 池权限 === pveum acl modify /pool/mypool -group developers -role PVEVMAdmin ===== 命令行工具 ===== === pveum命令 === 查看帮助: pveum help pveum help user add === 用户操作 === # 列表用户 pveum user list # 修改用户 pveum user modify john@pve --enable 0 # 删除用户 pveum user delete john@pve === 组操作 === # 列表组 pveum group list # 添加组 pveum group add newgroup === 权限操作 === # 列表权限 pveum acl list # 修改权限 pveum acl modify /vms -user john@pve -role PVEVMUser ===== 最佳实践 ===== 1. 使用组管理权限 2. 最小权限原则 3. 启用双因素认证 4. 定期审计权限 ===== 示例场景 ==== === 部门隔离 === 创建部门组: pveum group dev pveum group sales pveum acl modify /pool/dev-pool -group dev -role PVEVMAdmin pveum acl modify /pool/sales-pool -group sales -role PVEVMAdmin === API访问 === 创建API令牌: pveum user token add monitoring@pve prometheus --privsep 1 pveum acl modify /vms -token 'monitoring@pve!prometheus' -role PVEAuditor === 审计用户 === 审计权限: pveum user permissions john@pve