]> git.proxmox.com Git - pve-access-control.git/commit
api2: token: use userid-group as API perm check
authorFabian Grünbichler <f.gruenbichler@proxmox.com>
Mon, 20 Jun 2022 11:05:11 +0000 (13:05 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Mon, 20 Jun 2022 13:47:03 +0000 (15:47 +0200)
commit59164ff16b32b8ad67727642ff16975a8168dcce
tree28680bca4cc2bfb0acda1096ddd2be8ef7a12f7c
parent1cf4389b4242f9108c80f558a739c7d70c70cbc3
api2: token: use userid-group as API perm check

the previous version using an ACL path of '/access/users/{userid}' was
broken for non-root users, since the '@' character always contained in a
userid is not allowed in ACL paths.

this effectively meant that creating API tokens only worked for:
- root@pam (ACL checks skipped altogether)
- users with User.Modify on '/' with propagation (the roles/privs for
  '/' are propagated to the undefined path in this case)
- users creating their own tokens (first branch of 'or')

the userid-group check is used for all other modifications of user
entities, so it can also be used for creating/modifying/removing API
tokens.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
src/PVE/API2/User.pm