Jednotné přihlašování
Libre WebUI podporuje OAuth přihlášení přes GitHub a Hugging Face i libovolného poskytovatele OpenID Connect prostřednictvím obecné integrace OIDC. Uživatelé OAuth se stále ukládají jako místní uživatelé Libre WebUI a ve výchozím stavu dostanou roli user. OIDC může volitelně mapovat role a skupiny z claims.
GitHub OAuth
V GitHub Developer Settings vytvořte aplikaci OAuth.
Místní callback URL:
http://localhost:3001/api/auth/oauth/github/callback
Produkční callback URL:
https://your-domain.example/api/auth/oauth/github/callback
Soubor .env backendu:
GITHUB_CLIENT_ID=...
GITHUB_CLIENT_SECRET=...
GITHUB_CALLBACK_URL=https://your-domain.example/api/auth/oauth/github/callback
GitHub OAuth žádá scope user:email. Nová uživatelská jména mají prefix gh_.
Hugging Face OAuth
V nastavení Hugging Face vytvořte aplikaci OAuth.
Místní callback URL:
http://localhost:3001/api/auth/oauth/huggingface/callback
Produkční callback URL:
https://your-domain.example/api/auth/oauth/huggingface/callback
Soubor .env backendu:
HUGGINGFACE_CLIENT_ID=...
HUGGINGFACE_CLIENT_SECRET=...
HUGGINGFACE_CALLBACK_URL=https://your-domain.example/api/auth/oauth/huggingface/callback
Nová uživatelská jména mají prefix hf_.
Obecné OIDC
Funguje každý poskytovatel s discovery dokumentem OpenID Connect, například Keycloak, Authentik, Authelia, Okta, Entra ID nebo Google Workspace. Tok používá PKCE (S256), stav CSRF a nonce ověřený uvnitř ID tokenu s kontrolovaným podpisem; podpisové klíče se získají z JWKS poskytovatele.
Zaregistrujte důvěrného klienta s touto callback URL:
https://your-domain.example/api/auth/oauth/oidc/callback
Soubor .env backendu:
OIDC_ISSUER_URL=https://id.example.com/realms/main
OIDC_CLIENT_ID=libre-webui
OIDC_CLIENT_SECRET=...
OIDC_DISPLAY_NAME=Example SSO
Volitelná pravidla:
# Require a verified email in one of these domains
OIDC_ALLOWED_EMAIL_DOMAINS=example.com,example.org
# Grant/remove the admin role based on a group claim on every login
OIDC_GROUP_CLAIM=groups
OIDC_ADMIN_GROUPS=libre-admins
# Reconcile Libre group memberships with the group claim on every login
OIDC_SYNC_GROUPS=true
Identity se vážou ke stabilnímu claim sub, takže přejmenovaný účet poskytovatele zachová svůj účet Libre. Noví uživatelé dostanou jména s prefixem oidc_, pokud je registrace povolena. E-mail již vlastněný nepropojeným místním účtem se odmítne místo tichého sloučení. Při OIDC_SYNC_GROUPS=true řídí claims členství ve všech skupinách Libre se shodným názvem; nejprve tyto skupiny vytvořte na kartě User Management v Settings.
Společná nastavení
Nastavte veřejnou URL backendu:
BASE_URL=https://your-domain.example
CORS_ORIGIN=https://your-domain.example
Pokud callback URL nezadáte explicitně, Libre WebUI vytvoří výchozí hodnoty z BASE_URL.
Omezení
Libre WebUI momentálně neposkytuje SAML ani provisioning SCIM. Seznam povolených domén a mapování rolí/skupin jsou dostupné pouze pro obecné OIDC. Uživatelé GitHubu a Hugging Face vždy vzniknou s rolí user a spravují se v administrátorském rozhraní.
Řešení problémů
Tlačítko OAuth nic nedělá Ověřte client ID a secret poskytovatele a restart backendu.
Poskytovatel odmítá callback URL v panelu poskytovatele se musí přesně shodovat s URL používanou Libre WebUI.
Uživatel má běžná oprávnění Uživatelé OAuth vznikají jako user; podle potřeby je povyšte v administrátorském rozhraní.