mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-06 10:58:17 -05:00
[GH-ISSUE #18979] feat: support for semicolon-separated oauth group claims #34265
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?
Originally created by @ianmichaelterry on GitHub (Nov 6, 2025).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/18979
Check Existing Issues
Verify Feature Scope
Problem Description
My OIDC provider returns claims for "affiliation" as a semicolon separated list, ex "Faculty@ucsc.edu;Employee@ucsc.edu;Member@ucsc.edu". However, OWUI treats this as a single monolithic group name.
Desired Solution you'd like
I propose that we detect semicolons and interpret the result as a list of group names. I have implemented this in my local copy of OWUI with the following code:
This code goes in the
update_user_groupsfunction inoauth.py, approximate line number 920.ex.
Alternatives Considered
No response
Additional Context
Screenshot shows before and after of the proposed change
For the CILogon authentication system that supports thousands of universities worldwide, semicolons are the conventional separator for group membership associated with the affiliation claim. See "affiliation" on cilogon.org/oidc
@rndmcnlly commented on GitHub (Nov 6, 2025):
I want to endorse this change because it will have a big impact on my ability to spread OWUI-based BayLeaf to many other universities around the world.
@Classic298 commented on GitHub (Nov 6, 2025):
should be addressed by this env var which was introduced today - please confirm.
https://docs.openwebui.com/getting-started/env-configuration#oauth_roles_separator
@rndmcnlly commented on GitHub (Nov 6, 2025):
Wait, please reopen,
OAUTH_ROLES_SEPARATORis not a solution here because we need a separator for groups rather than roles.That said,
OAUTH_GROUPS_SEPARATORwould be a nice name for a configurable version of what we've hard-coded as;in the solution above.@Classic298 commented on GitHub (Nov 6, 2025):
Pr welcome, sorry for the misunderstanding
@rndmcnlly commented on GitHub (Nov 6, 2025):
No problem, here's the PR: https://github.com/open-webui/open-webui/pull/18983
@Classic298 commented on GitHub (Nov 6, 2025):
@rndmcnlly please reopen with correct CLA