[pmg-devel] [PATCH pve-common/proxmox-perl-rs/pmg-api/pmg-gui v3 0/8] fix #3892: OpenID
Markus Frank
m.frank at proxmox.com
Thu Nov 14 17:19:38 CET 2024
Thanks for the review and sorry for the late reply.
Comments inline:
On 2024-10-09 13:30, Christoph Heiss wrote:
> Just tested this series using Keycloak 26.0.0 as an OpenID provider.
>
> Everything worked fine once it was set up for the OpenID side! Login via
> OpenID worked, also tested the "Autocreate Users" feature (but see below
> on that). The GUI dialog panel is from proxmox-widget-toolkit, so
> nothing really new there.
>
> I noticed however that there seems to be no dedicated PAM realm in the
> login window, only PMG authentication server - but you can still login
> with PAM credentials. These two should be real separate realms, much
> like we have it for PVE/PBS.
But you can only login as root with PAM afaict.
Should we separate it just for the root user or are we planning to add PAM login for other users?
>
> Also, when using the "Autocreate Users" feature - should the (PMG) role
> assigned to the user maybe be configurable? Since it currently just
> defaults to Auditor, as it seems. (or am I missing something?)
Okay, that sounds reasonable. I will add such an option.
>
> Lastly, patches #2 and #3 need to be rebased on the latest master
> of proxmox-perl-rs, they failed to apply (resolved that manually myself
> to test them out for now). All other patches in this series apply on
> their respective master cleanly.
>
> Didn't really have a look at the code yet, so might do some reviews on
> that too.
>
> On Mon, Jun 24, 2024 at 11:08:42AM GMT, Markus Frank wrote:
>> Patch-series to enable OpenID Login for PMG
>>
>> apply/compile order:
>>
>> 1. pve-common: add Schema package with auth module that contains realm sync options
>> 2. proxmox-perl-rs: move openid code from pve-rs to common
>> 3. proxmox-perl-rs: remove empty PMG::RS::OpenId package to avoid confusion
>> 4. pmg-api: config: add plugin system for realms & add openid type realms
>> 5. pmg-api: api: add/update/remove realms like in PVE
>> 6. pmg-api: api: openid login similar to PVE
>> 7. pmg-gui: login: add option to login with OpenID realm
>> 8. pmg-gui: add panel for realms to User Management
>>
>>
>> v3 changed only in proxmox-perl-rs and "pmg-api: api: openid login similar to PVE"
>>
>>
>> pve-common:
>>
>> Markus Frank (1):
>> add Schema package with auth module that contains realm sync options
>>
>> src/Makefile | 2 ++
>> src/PVE/Schema/Auth.pm | 82 ++++++++++++++++++++++++++++++++++++++++++
>> 2 files changed, 84 insertions(+)
>> create mode 100644 src/PVE/Schema/Auth.pm
>>
>>
>> proxmox-perl-rs:
>>
>> v3: removed PMG wrapper as Proxmox::RS:OpenId can be used instead.
>>
>> Markus Frank (2):
>> move openid code from pve-rs to common
>> remove empty PMG::RS::OpenId package to avoid confusion
>>
>> common/pkg/Makefile | 1 +
>> common/src/mod.rs | 1 +
>> common/src/openid/mod.rs | 63 ++++++++++++++++++++++++++++++++++++++++
>> pmg-rs/Cargo.toml | 1 +
>> pmg-rs/Makefile | 1 -
>> pmg-rs/debian/control | 1 +
>> pve-rs/src/openid/mod.rs | 32 +++++---------------
>> 7 files changed, 75 insertions(+), 25 deletions(-)
>> create mode 100644 common/src/openid/mod.rs
>>
>>
>> pmg-api:
>>
>> v3: use Proxmox::RS:OpenId instead of PMG::RS::OpenId
>>
>> Markus Frank (3):
>> config: add plugin system for realms & add openid type realms
>> api: add/update/remove realms like in PVE
>> api: openid login similar to PVE
>>
>> src/Makefile | 5 +
>> src/PMG/API2/AccessControl.pm | 17 ++-
>> src/PMG/API2/Authdomains.pm | 274 ++++++++++++++++++++++++++++++++++
>> src/PMG/API2/OIDC.pm | 243 ++++++++++++++++++++++++++++++
>> src/PMG/AccessControl.pm | 31 ++++
>> src/PMG/Auth/OIDC.pm | 99 ++++++++++++
>> src/PMG/Auth/PMG.pm | 28 ++++
>> src/PMG/Auth/Plugin.pm | 193 ++++++++++++++++++++++++
>> src/PMG/HTTPServer.pm | 2 +
>> src/PMG/RESTEnvironment.pm | 14 ++
>> src/PMG/UserConfig.pm | 25 ++--
>> src/PMG/Utils.pm | 29 +++-
>> 12 files changed, 943 insertions(+), 17 deletions(-)
>> create mode 100644 src/PMG/API2/Authdomains.pm
>> create mode 100644 src/PMG/API2/OIDC.pm
>> create mode 100755 src/PMG/Auth/OIDC.pm
>> create mode 100755 src/PMG/Auth/PMG.pm
>> create mode 100755 src/PMG/Auth/Plugin.pm
>>
>>
>> pmg-gui:
>>
>> Markus Frank (2):
>> login: add OpenID realms
>> add panel for realms to User Management
>>
>> js/LoginView.js | 200 +++++++++++++++++++++++++++++++++----------
>> js/UserManagement.js | 6 ++
>> js/Utils.js | 15 ++++
>> 3 files changed, 174 insertions(+), 47 deletions(-)
>>
>> --
>> 2.39.2
>>
>>
>>
>> _______________________________________________
>> pmg-devel mailing list
>> pmg-devel at lists.proxmox.com
>> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pmg-devel
>>
>>
More information about the pmg-devel
mailing list