You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/en_US/oauth2.rst
+93-2Lines changed: 93 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,11 +28,11 @@ and secure.
28
28
.. note::
29
29
When **OAUTH2_SERVER_METADATA_URL** is configured, pgAdmin treats the provider
30
30
as an OIDC provider and will:
31
-
31
+
32
32
- Use ID token claims for user identity (sub, email, preferred_username)
33
33
- Skip the userinfo endpoint call when ID token contains sufficient information
34
34
- Validate the ID token automatically using the provider's public keys
35
-
35
+
36
36
This is the **recommended approach** for modern identity providers like
37
37
Microsoft Entra ID (Azure AD), Google, Keycloak, Auth0, and Okta.
38
38
@@ -55,6 +55,8 @@ and secure.
55
55
"OAUTH2_DISPLAY_NAME", "Oauth2 display name in pgAdmin"
56
56
"OAUTH2_CLIENT_ID", "Oauth2 Client ID"
57
57
"OAUTH2_CLIENT_SECRET", "Oauth2 Client Secret. **Optional for public clients using Authorization Code + PKCE**. For confidential clients (server-side apps), keep this set. For public clients (no secret), pgAdmin will enforce PKCE and perform an unauthenticated token exchange."
58
+
"OAUTH2_CLIENT_AUTH_METHOD", "Client authentication method for the token endpoint. Default behavior uses *OAUTH2_CLIENT_SECRET* (confidential client), or PKCE when no secret is provided (public client). Set to *workload_identity* to authenticate using an Azure Entra ID workload identity (federated credential) without a client secret."
59
+
"OAUTH2_WORKLOAD_IDENTITY_TOKEN_FILE", "When **OAUTH2_CLIENT_AUTH_METHOD** is *workload_identity*, path to the projected OIDC token file (Kubernetes service account JWT). This file must exist at pgAdmin startup."
"OAUTH2_AUTHORIZATION_URL", "Endpoint for user authorization"
60
62
"OAUTH2_SERVER_METADATA_URL", "**OIDC Discovery URL** (recommended for OIDC providers). When set, pgAdmin will use OIDC flow with automatic ID token validation and user claims from the ID token. Example: *https://login.microsoftonline.com/{tenant}/v2.0/.well-known/openid-configuration*. When using this parameter, OAUTH2_TOKEN_URL and OAUTH2_AUTHORIZATION_URL are optional as they will be discovered automatically."
@@ -124,6 +126,95 @@ pgAdmin supports interactive user login for both client types:
124
126
(token endpoint client authentication method: ``none``). This is required for Authorization Code + PKCE
125
127
flows where no client secret is available.
126
128
129
+
Azure Entra ID Workload Identity (AKS) (No Client Secret)
0 commit comments