Files

19 lines
568 B
Python

"""Helpers for Proxmox VE."""
from .const import ProxmoxPermission
def is_granted(
permissions: dict[str, dict[str, int]],
p_type: str = "vms",
p_id: str | int | None = None, # can be str for nodes
permission: ProxmoxPermission = ProxmoxPermission.POWER,
) -> bool:
"""Validate user permissions for the given type and permission."""
paths = [f"/{p_type}/{p_id}", f"/{p_type}", "/"]
for path in paths:
value = permissions.get(path, {}).get(permission)
if value is not None:
return value == 1
return False