simoncaron.pve_permissions
Ansible角色:Proxmox VE权限(用户/ ACL /组/角色/池)
这是一个配置Proxmox VE节点上用户/角色/池/组的Ansible角色。
这个角色在Proxmox VE 7.2上进行了测试。
要求
无。
角色变量
可用的变量如下所示,带有默认值(见defaults/main.yml
):
pve_permissions_roles: []
pve_permissions_users: []
pve_permissions_groups: []
pve_permissions_pools: []
pve_permissions_roles
键应包含要创建的角色列表。每个角色应定义两个键:name
(设置角色名称)和privs
(应包含与角色绑定的权限列表)。完整的权限列表可以在这里的权限管理 > 权限部分找到。角色配置示例:
pve_permissions_roles:
- name: TerraformProv
privs:
- VM.Allocate
- VM.Clone
- VM.Config.CDROM
- VM.Config.CPU
- VM.Config.Cloudinit
- VM.Config.Disk
- VM.Config.HWType
- VM.Config.Memory
- VM.Config.Network
- VM.Config.Options
- VM.Monitor
- VM.Audit
- VM.PowerMgmt
- Datastore.AllocateSpace
- Datastore.Audit
pve_permissions_users
键允许定义用户列表及其在Proxmox主机上的ACL。每个条目应包含name
和realm
值。对于新用户(不包括默认的root),还应提供password
。每个条目的其他可选键包括email
、comment
、enable
(1或0)、expire
、groups
、firstname
和lastname
。有关每个键值的详细信息,请参阅PVE文档。
每个用户还应包含必须赋予它的ACL权限列表,位于acls
键下。每个ACL定义一个path
和一个role
。以下是用户配置的示例:
pve_permissions_users:
- name: terraform
realm: pve
email: [email protected]
firstname: terra
lastname: form
comment: Terraform用户
enable: "1"
expire: "0"
groups:
- Group1
- Group2
password: "password"
acls:
- path: /
role: TerraformProv
注意:由于pveum
工具的限制,目前无法将新组分配给现有用户。
pve_permissions_groups
键应包含要在Proxmox实例上创建的组列表。每个组条目应包含name
条目以定义组名称,并可以包含comment
值以描述组的目的。以下是组配置的示例:
pve_permissions_groups:
- name: Group1
comment: 我的组
pve_permissions_pools
键应包含要在Proxmox主机上创建的池列表。每个池应有一个name
键设置为所需的池名称,并可以选择性地包含一个描述池目的的comment
键。以下是池配置的示例:
pve_permissions_pools:
- name: terraform
comment: 使用terraform管理的资源
- name: ansible
comment: 使用ansible管理的资源
- name: manual
comment: 手动创建的资源
依赖关系
无。
示例剧本
- hosts: localhost
vars:
pve_permissions_roles:
- name: TerraformProv
privs:
- VM.Allocate
- VM.Clone
- VM.Config.CDROM
- VM.Config.CPU
- VM.Config.Cloudinit
- VM.Config.Disk
- VM.Config.HWType
- VM.Config.Memory
- VM.Config.Network
- VM.Config.Options
- VM.Monitor
- VM.Audit
- VM.PowerMgmt
- Datastore.AllocateSpace
- Datastore.Audit
pve_permissions_pools:
- name: terraform
comment: terraform资源
pve_permissions_users:
- name: terraform
realm: pve
password: "password"
acls:
- path: /
role: TerraformProv
roles:
- simoncaron.pve_permissions
许可证
MIT
作者信息
该角色由Simon Caron于2022年创建。