From: Azharul Haque <haque@azharul.com>
To: pve-devel@lists.proxmox.com
Cc: haque@azharul.com
Subject: [PATCH v2 0/7] app: implement OpenID Connect (OAuth) realm login (#4281)
Date: Mon, 10 Aug 2026 10:47:06 -0400 [thread overview]
Message-ID: <20260810144713.75806-1-haque@azharul.com> (raw)
In-Reply-To: <DKLBG6CWJUEE.19P6UCP1STB6F@proxmox.com>
The native Flutter "Proxmox VE Companion" app never implemented OpenID
Connect / OAuth realm login (bug #4281[0]): selecting an OAuth realm
just showed username/password fields that could never work.
v2: resending as a single combined series across all three affected
repositories, per feedback -- each patch subject is now prefixed with
the (shortened) repository name it applies to. No functional changes
from v1.
This series spans three repositories and should be applied together:
dart-api-client (2 patches):
API-layer building blocks for OIDC login -- a `type` property on
PveAccessDomainModel to detect OpenID realms, and helpers for
PVE's /access/openid/auth-url and /access/openid/login endpoints.
login-manager (3 patches):
Login-form UI: hide username/password fields for OpenID realms
and drive the OAuth flow via flutter_web_auth_2 (system browser /
ASWebAuthenticationSession on iOS, Chrome Custom Tabs on Android
-- deliberately not an in-app webview); a fix for a stale Continue
button state when switching realms; and namespacing the OpenID
redirect scheme under Proxmox's own reserved com.proxmox.*
package prefix to avoid Android custom-URL-scheme collisions.
flutter-frontend (2 patches):
Android-side wiring: register flutter_web_auth_2's
CallbackActivity in AndroidManifest.xml for the OpenID redirect
scheme, and a follow-up fix to match a later rename of that
scheme. No iOS-side changes are required here --
ASWebAuthenticationSession resolves the custom-scheme redirect at
runtime without a static declaration equivalent to the Android
manifest entry.
Verified end-to-end against a real PVE server with an Authentik OIDC
realm, on both Android and iOS.
[0] https://bugzilla.proxmox.com/show_bug.cgi?id=4281
Azharul Haque (7):
fix #4281: access: add `type` property to `PveAccessDomainModel`
fix #4281: access: add OpenID Connect auth-url/login helpers
fix #4281: ui: add OpenID Connect login flow to login form
fix #4281: ui: fix stale Continue button state on realm switch
fix #4281: ui: use a namespaced OpenID callback scheme
fix #4281: android: register OpenID Connect callback activity
fix #4281: android: match renamed OpenID callback scheme
--
2.50.1 (Apple Git-155)
next prev parent reply other threads:[~2026-08-13 15:58 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-10 5:40 [PATCH 0/2] android: register OpenID Connect callback activity for #4281 Azharul Haque
2026-08-10 5:40 ` [PATCH 1/2] fix #4281: android: register OpenID Connect callback activity Azharul Haque
2026-08-10 5:40 ` [PATCH 2/2] fix #4281: android: match renamed OpenID callback scheme Azharul Haque
2026-08-10 13:59 ` [PATCH 0/2] android: register OpenID Connect callback activity for #4281 Shan Shaji
2026-08-10 14:47 ` Azharul Haque [this message]
2026-08-10 14:47 ` [PATCH dart-api-client v2 1/2] fix #4281: access: add `type` property to `PveAccessDomainModel` Azharul Haque
2026-08-10 14:47 ` [PATCH dart-api-client v2 2/2] fix #4281: access: add OpenID Connect auth-url/login helpers Azharul Haque
2026-08-10 14:47 ` [PATCH login-manager v2 1/3] fix #4281: ui: add OpenID Connect login flow to login form Azharul Haque
2026-08-10 14:47 ` [PATCH login-manager v2 2/3] fix #4281: ui: fix stale Continue button state on realm switch Azharul Haque
2026-08-10 14:47 ` [PATCH login-manager v2 3/3] fix #4281: ui: use a namespaced OpenID callback scheme Azharul Haque
2026-08-10 14:47 ` [PATCH flutter-frontend v2 1/2] fix #4281: android: register OpenID Connect callback activity Azharul Haque
2026-08-10 14:47 ` [PATCH flutter-frontend v2 2/2] fix #4281: android: match renamed OpenID callback scheme Azharul Haque
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260810144713.75806-1-haque@azharul.com \
--to=haque@azharul.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.