[pbs-devel] [PATCH proxmox 0/5] add proxmox-access crate

Shannon Sterz s.sterz at proxmox.com
Mon Jun 10 17:42:09 CEST 2024


the idea behind the `proxmox-access` crate is to enable us to easily
re-use the acl tree, user config and token shadow implementation of
proxmox backup server across multiple projects. this series factors out
the implementations from proxmox-backup's `pbs-config` crate.

to use this crate, a client simply needs to implement the `AcmConfig`
(Access Control Management Config) trait and providing a path to store
the configuration files in. for the cached configs, one also needs to
provide the product name and the location of the shared memory that will
be used to keep track of cache generations.

currently, i did not move proxmox-backup itself over to this crate, as
`pbs-config` has quite a few interdependencies within `proxmox-backup`
that would take some detangling. however, i can also get started on that
if desired.

proxmox:

Shannon Sterz (5):
  access: add the proxmox-access crate to reuse acl trees
  access: define shared `User`, `UserWithTokens` and `ApiTokens types
  access: make token shadow implementation re-usable
  access: factor out user config and cache handling
  access: increment user cache generation when saving acl config

 Cargo.toml                                 |    3 +
 proxmox-access/Cargo.toml                  |   30 +
 proxmox-access/src/acl.rs                  | 1008 ++++++++++++++++++++
 proxmox-access/src/cached_user_info.rs     |  242 +++++
 proxmox-access/src/config_version_cache.rs |  113 +++
 proxmox-access/src/init.rs                 |  139 +++
 proxmox-access/src/lib.rs                  |   11 +
 proxmox-access/src/token_shadow.rs         |   84 ++
 proxmox-access/src/types.rs                |  228 +++++
 proxmox-access/src/user.rs                 |  182 ++++
 10 files changed, 2040 insertions(+)
 create mode 100644 proxmox-access/Cargo.toml
 create mode 100644 proxmox-access/src/acl.rs
 create mode 100644 proxmox-access/src/cached_user_info.rs
 create mode 100644 proxmox-access/src/config_version_cache.rs
 create mode 100644 proxmox-access/src/init.rs
 create mode 100644 proxmox-access/src/lib.rs
 create mode 100644 proxmox-access/src/token_shadow.rs
 create mode 100644 proxmox-access/src/types.rs
 create mode 100644 proxmox-access/src/user.rs


Summary over all repositories:
  10 files changed, 2040 insertions(+), 0 deletions(-)

--
Generated by git-murpp 0.5.0




More information about the pbs-devel mailing list