simoncaron.pve_permissions

Ansibleロール: Proxmox VEの権限(ユーザー/ACL/グループ/ロール/プール)

Ansible Lint Ansible Release Ansible Galaxy Downloads

このAnsibleロールは、Proxmox VEノード上でユーザー、ロール、プール、グループを設定します。

このロールはProxmox VE 7.2でテストされました。

要件

特にありません。

ロール変数

使用可能な変数は以下の通りで、デフォルト値が設定されています(defaults/main.ymlを参照):

pve_permissions_roles: []

pve_permissions_users: []

pve_permissions_groups: []

pve_permissions_pools: []

pve_permissions_rolesキーには作成するロールのリストを含める必要があります。各ロールには、ロール名を設定するnameと、ロールに結びつける権限のリストを設定するprivsの2つのキーが必要です。権限の完全なリストはこちらで確認できます(パーミッション管理 > 権限の下)。ロール設定の例:

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のリストを定義するために使用されます。各エントリにはnamerealmの値が含まれている必要があります。新しいユーザー(デフォルトのroot以外)には、passwordも提供する必要があります。オプションで、各エントリにはemailcommentenable(1または0)、expiregroupsfirstname、およびlastnameのキーが含まれます。各キーの値の詳細はProxmox VEのドキュメントでご覧になれます。

各ユーザーには、aclsキーの下にそのユーザーに付与されるACL権限のリストが必要です。各ACLはpathroleを定義します。以下はユーザー設定の例です:

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

著者情報

このロールは2022年にSimon Caronによって作成されました。

プロジェクトについて

A role to configure Proxmox VE Users, Roles, ACLs and Pools

インストール
ansible-galaxy install simoncaron.pve_permissions
ライセンス
mit
ダウンロード
4.6k
所有者
Software Engineer | IaC | Containers | Ansible | Kubernetes | Helm