Skip to main content
OIDC-inloggning hanteras av tjänsten web (modulen authentication) i varje Ayakaleaf Pro-pod. Den har inget bakgrundsjobb och ingen separat pod. Leverantörssidan (klient, omdirigerings-URI:er, administratörsanspråk) är densamma som i Toolkit, så konfigurera först din OpenID Provider (OP) enligt OIDC-autentisering och lägg sedan in värdena i Kubernetes enligt nedan.

Var saker körs

Konfiguration

1

Registrera Overleaf hos OP:n

Tillåt följande adresser i din OP, byggda utifrån OVERLEAF_SITE_URL:Hitta de fem URL:erna i OP:ns discovery-dokument enligt beskrivningen i Hitta värdena med discovery-dokumentet.
2

Lägg till inställningarna i ConfigMap

Lägg till i overleaf-env (30-config.yaml, eller 60-config.yaml för flera repliker):
30-config.yaml (additions)
EXTERNAL_AUTH tar en mellanslagsseparerad lista, till exempel ldap oidc. Se Miljövariabler för alla OVERLEAF_OIDC_*-inställningar; alla läggs i ConfigMap utom klienthemligheten.
Citera "true" och "false": en ConfigMap innehåller bara strängar. En nyckel som är satt till "" är inte samma sak som en saknad nyckel: OVERLEAF_OIDC_ALLOWED_EMAIL_DOMAINS: "" stänger av kontoskapande vid första inloggningen, medan en utelämnad nyckel tillåter alla domäner.
3

Lägg klienthemligheten i Secret

4

Lita på en privat CA (valfritt)

Om OP:ns certifikat kommer från din egen CA lägger du till CA:n i Secret overleaf-certs som är monterad på /var/lib/overleaf/certs (se Certifikat och andra filer) och pekar Node.js på den:
5

Tillämpa och starta om

Kontrollera sedan att varje pod når token-slutpunkten. Det är poddarna som anropar den, inte webbläsaren, så ett brandväggs- eller DNS-problem syns bara här:
Vilken HTTP-status som helst (405 för en GET) betyder att slutpunkten går att nå; 000 betyder att den inte gör det.

Flera repliker

Inget extra. Värdet state för en inloggning och ID-token som används vid utloggning sparas i sessionen, som finns i Redis, så callback-anropet fungerar på vilken replik som än tar emot det.

Testat på Kubernetes

Med goauthentik som OP, på Kubernetes 1.37 med tre repliker bakom HAProxy, klarar våra end-to-end-tester för OIDC sig (35 fall): inloggning, och utloggning via OP:n; administratörsmappning via grupp, via e-post och via ett enskilt värde, samt utan mappning; namn och administratörsflagga som uppdateras vid varje inloggning; länkning och avlänkning av konton; lösenordsåterställning och lösenordsändringar för OIDC-konton; avstängda konton; OVERLEAF_OIDC_ALLOWED_EMAIL_DOMAINS; OVERLEAF_DISABLE_LOCAL_LOGIN; samt OIDC tillsammans med offentlig åtkomst.

Frågor och svar

Svar: Webbläsaren skickade inte tillbaka sessionscookien med callback-anropet. På Kubernetes är de vanligaste orsakerna:
  • OVERLEAF_SECURE_COOKIE är satt, men användarna öppnar webbplatsen över vanlig HTTP, så webbläsaren sparar aldrig cookien. Vilket värde som helst på OVERLEAF_SECURE_COOKIE, även "false", aktiverar säkra cookies; ta bort nyckeln i stället.
  • Webbplatsen öppnas under en annan adress än OVERLEAF_SITE_URL.
  • Bakom HTTPS skickar din ingress eller lastbalanserare inte X-Forwarded-Proto: https, eller så saknas dess adress i OVERLEAF_TRUSTED_PROXY_IPS.
Svar: I web-loggen för den pod som hanterade förfrågan, inte i kubectl logs:
Med flera repliker kontrollerar du varje overleaf-N.
Senast ändrad 2 november 2026