From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 5F044905B1 for ; Tue, 2 Apr 2024 13:27:32 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 35B854A73 for ; Tue, 2 Apr 2024 13:27:32 +0200 (CEST) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Tue, 2 Apr 2024 13:27:31 +0200 (CEST) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 5C93C44A06 for ; Tue, 2 Apr 2024 13:27:31 +0200 (CEST) From: Markus Frank To: pmg-devel@lists.proxmox.com Date: Tue, 2 Apr 2024 13:27:15 +0200 Message-Id: <20240402112721.14405-1-m.frank@proxmox.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.034 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pmg-devel] [PATCH proxmox-perl-rs/pmg-api/pmg-gui 0/6] fix #3892: OpenID X-BeenThere: pmg-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Mail Gateway development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 02 Apr 2024 11:27:32 -0000 Patch-series to enable OpenID Login for PMG apply/compile order: 1. proxmox-perl-rs: move openid code from pve-rs to common 2. pmg-api: config: add plugin system for realms & add openid type realms 3. pmg-api: api: add/update/remove realms like in PVE 4. pmg-api: api: openid login similar to PVE 5. pmg-gui: login: add option to login with OpenID realm 6. pmg-gui: add pmxAuthView panel to UserManagement proxmox-perl-rs: Markus Frank (1): move openid code from pve-rs to common common/src/mod.rs | 1 + common/src/openid/mod.rs | 63 ++++++++++++++++++++++++++++++++++++++++ pmg-rs/Cargo.toml | 1 + pmg-rs/src/lib.rs | 1 + pmg-rs/src/openid/mod.rs | 47 ++++++++++++++++++++++++++++++ pve-rs/src/openid/mod.rs | 32 +++++--------------- 6 files changed, 121 insertions(+), 24 deletions(-) create mode 100644 common/src/openid/mod.rs create mode 100644 pmg-rs/src/openid/mod.rs pmg-api: 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 | 18 ++- src/PMG/API2/Authdomains.pm | 272 ++++++++++++++++++++++++++++++++++ src/PMG/API2/OpenId.pm | 243 ++++++++++++++++++++++++++++++ src/PMG/AccessControl.pm | 33 +++++ src/PMG/Auth/OpenId.pm | 99 +++++++++++++ src/PMG/Auth/PMG.pm | 28 ++++ src/PMG/Auth/Plugin.pm | 269 +++++++++++++++++++++++++++++++++ src/PMG/HTTPServer.pm | 2 + src/PMG/RESTEnvironment.pm | 14 ++ src/PMG/UserConfig.pm | 26 ++-- src/PMG/Utils.pm | 24 ++- 12 files changed, 1018 insertions(+), 15 deletions(-) create mode 100644 src/PMG/API2/Authdomains.pm create mode 100644 src/PMG/API2/OpenId.pm create mode 100755 src/PMG/Auth/OpenId.pm create mode 100755 src/PMG/Auth/PMG.pm create mode 100755 src/PMG/Auth/Plugin.pm pmg-gui: Markus Frank (2): login: add option to login with OpenID realm add pmxAuthView panel to UserManagement js/LoginView.js | 200 +++++++++++++++++++++++++++++++++---------- js/UserManagement.js | 6 ++ js/Utils.js | 9 ++ 3 files changed, 168 insertions(+), 47 deletions(-) -- 2.39.2