Hop til hovedindhold

Single sign-on

Libre WebUI understøtter OAuth-login med GitHub og Hugging Face samt enhver OpenID Connect-udbyder via den generelle OIDC-integration. OAuth-brugere gemmes stadig som lokale Libre WebUI-brugere og får rollen user som standard. OIDC kan valgfrit tilknytte roller og grupper fra claims.

GitHub OAuth

Opret en OAuth-app i GitHub Developer Settings.

Lokal callback-URL:

http://localhost:3001/api/auth/oauth/github/callback

Callback-URL i produktion:

https://your-domain.example/api/auth/oauth/github/callback

Backend-.env:

GITHUB_CLIENT_ID=...
GITHUB_CLIENT_SECRET=...
GITHUB_CALLBACK_URL=https://your-domain.example/api/auth/oauth/github/callback

GitHub OAuth anmod scope user:email. Nye brugernavne får præfikset gh_.

Hugging Face OAuth

Opret en OAuth-app i Hugging Face-indstillingerne.

Lokal callback-URL:

http://localhost:3001/api/auth/oauth/huggingface/callback

Callback-URL i produktion:

https://your-domain.example/api/auth/oauth/huggingface/callback

Backend-.env:

HUGGINGFACE_CLIENT_ID=...
HUGGINGFACE_CLIENT_SECRET=...
HUGGINGFACE_CALLBACK_URL=https://your-domain.example/api/auth/oauth/huggingface/callback

Nye brugernavne får præfikset hf_.

Generell OIDC

Alle udbydere med et OpenID Connect-discoverydokument fungerer, eksempelvis Keycloak, Authentik, Authelia, Okta, Entra ID og Google Workspace. Flødet bruger PKCE (S256), CSRF-state og en nonce som verificeres i den signaturkontrollerede ID-token; signeringsnøgler hentes fra udbyderens JWKS.

Registrera en konfidentiell klient med:

https://your-domain.example/api/auth/oauth/oidc/callback

Backend-.env:

OIDC_ISSUER_URL=https://id.example.com/realms/main
OIDC_CLIENT_ID=libre-webui
OIDC_CLIENT_SECRET=...
OIDC_DISPLAY_NAME=Example SSO

Valfria regler:

# 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

Identiteter knyttes til den stabile claim sub, så en navneændring hos udbyderen bevarer Libre-kontoen. Nye brugere får brugernavne med præfikset oidc_, når registrering er tilladt. En e-mailadresse, der allerede ejes af en lokal konto uden tilknytning, afvises i stedet for at blive slået sammen uden varsel. Med OIDC_SYNC_GROUPS=true styres medlemskab af claims for alle Libre-grupper med tilsvarende navn; opret grupperne på fanen User Management i Indstillinger først.

Gemensamma indstillinger

Angiv publik backend-URL:

BASE_URL=https://your-domain.example
CORS_ORIGIN=https://your-domain.example

Om callback-URL:er ikke anges byggs standardværdier fra BASE_URL.

Begrænsningar

Libre WebUI tilbyder i øjeblikket ikke SAML eller SCIM-provisionering. Domænlistor og rolle-/gruppmappning gælder kun generel OIDC. GitHub- og Hugging Face-brugere oprettes altid som user og hanteras i administratørsgrænssnittet.

Fejlfinding

OAuth-knappen gør intet Kontrollera client ID og secret og genstart backend.

Udbyderen afviser callback URL:en i udbyderens panel skal præcis matcha Libre WebUI's URL.

Anvændaren får almindelige rettigheder OAuth-brugere oprettes som user; befordra dem i administratørsgrænssnittet ved behov.

Relaterede dokumenter