mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-06 10:58:17 -05:00
[PR #12945] feat: Full OAuth/OIDC Admin Support – Dynamic Provider Settings, Claims, and Role/Group Management #46106
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/open-webui/open-webui/pull/12945
Author: @taylorwilsdon
Created: 4/17/2025
Status: 🔄 Open
Base:
dev← Head:add_identity_mgmt📝 Commits (10+)
a413865add ui elements and auths.py handlers for full set of oauth settings64d5b76fix config route response logic421dd69API & Frontend in synce3778e1all working, prep for client id and secret / provider values65cf437add additional oauth/oidc settings to admin general uidf623ffPersistentConfig entries exist for all settings, AdminConfig model updated to include the new settings, update_admin_config endpoint updated to handle saving the new settings, OAuth provider registration uses these settings when configuring the OIDC provider690a3abfix config init5c4e46aProperly initializing the OAuth config variables in config.py with correct paths2eea797Added the missing imports for these OAuth config variables4024db6working great hell yeah + improve input styling📊 Changes
5 files changed (+539 additions, -135 deletions)
View changed files
📝
backend/open_webui/config.py(+102 -79)📝
backend/open_webui/main.py(+31 -0)📝
backend/open_webui/routers/auths.py(+182 -53)📝
backend/open_webui/utils/oauth.py(+11 -3)📝
src/lib/components/admin/Settings/General.svelte(+213 -0)📄 Description
Pull Request Checklist
Before submitting, make sure you've checked the following:
devbranch.Pull Request Title
feat: Comprehensive OAuth/OIDC Identity Management in Admin UI and Backend
Description
This PR introduces a comprehensive set of features for managing OAuth/OIDC identity provider settings through the administrative interface and backend. It enables dynamic configuration of OAuth parameters—including client ID/secret, provider name, OIDC URLs, claim mappings, and access role/group logic—directly from the admin UI, with full persistence and immediate effect in the backend authentication system.
OAuth provider configuration can now be fully managed through persistent config, ensuring a smoother, more flexible SSO/identity integration workflow for admins and deployments.
Changelog Entry
Description
Added
config.pyfor all option keys (including correct key paths)./admin/configPATCH API for all OAuth/OIDC fields with correct branching toCONFIG_DATA.utils/oauth.py) and model definitions for new config fields.Changed
oauth.<key>.Deprecated
Removed
Fixed
Security
Additional Information
Screenshots or Videos
New section with no OAuth/OIDC configured, everything collapsed:

Expanded Admin UI Section for OAuth/OIDC Settings:
Conditional display for groups input:

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.