authentication) i varje Ayakaleaf Pro-pod. Den har inget bakgrundsjobb och ingen separat pod. Konfigurera identitetsleverantören (IdP) enligt SAML-autentisering och lägg sedan in värdena och IdP-certifikatet i Kubernetes enligt nedan.
Var saker körs
Konfiguration
1
Registrera Overleaf hos IdP:n
Genomgången för goauthentik visar var dessa finns.
2
Lägg IdP-certifikatet i Secret overleaf-certs
Toolkit läser certifikatet från Om Secret redan finns lägger du i stället till filen i den: ta bort och återskapa den med varje
data/overleaf/certs/. På Kubernetes kommer det från Secret overleaf-certs, monterad på /var/lib/overleaf/certs enligt beskrivningen i Certifikat och andra filer:--from-file, eller kör kubectl -n overleaf edit secret overleaf-certs.OVERLEAF_SAML_IDP_CERT tar en sökväg, eller en JSON-lista med sökvägar under ett certifikatbyte. Den tar inte själva PEM-texten.3
Lägg till inställningarna i ConfigMap
30-config.yaml (additions)
OVERLEAF_SAML_*-inställningar listas under Miljövariabler. Alla läggs i ConfigMap: ingen av dem är i sig en hemlighet. Nyckelfiler (OVERLEAF_SAML_PRIVATE_KEY, OVERLEAF_SAML_DECRYPTION_PVK) läggs i overleaf-certs, och ConfigMap innehåller deras sökvägar.4
Tillämpa och starta om
overleaf-certs kräver också denna omstart.Flera repliker
IdP:n skickar tillbaka användaren till ACS-URL:en med enPOST mellan webbplatser. Webbläsare skickar inte SameSite=Lax-cookies med den, så förfrågan bär varken Overleafs sessionscookie eller, i Chrome och Edge, lastbalanserarens sticky-cookie, och den kan hamna på vilken replik som helst. Med standardinställningarna spelar det ingen roll: repliken som tar emot den skapar sessionen i Redis, och lastbalanseraren håller kvar användaren där från och med då.
Testat på Kubernetes
Med goauthentik som IdP (HTTP-POST-bindning, signerade assertions och svar), på Kubernetes 1.37 med tre repliker bakom HAProxy, klarar våra end-to-end-tester för SAML sig (19 fall): den första administratören från launchpad som loggar in via SAML, inloggning med IdP-certifikatet frånoverleaf-certs, kontoskapande och ny inloggning, administratörsmappning via grupp och utan mappning, namn och administratörsflagga som uppdateras vid varje inloggning, utloggning via IdP:n, lösenordsregler för SAML-konton samt avstängda konton. OVERLEAF_SAML_VALIDATE_IN_RESPONSE_TO lämnades på sitt standardvärde.
Frågor och svar
Inloggning via SAML visar direkt ”Something went wrong”
Inloggning via SAML visar direkt ”Something went wrong”
Svar: SAML-strategin kunde inte laddas. Podden blir ändå redo, så titta i web-loggen för varje pod:Vanliga orsaker:
OVERLEAF_SAML_IDP_CERT pekar på en fil som inte finns i overleaf-certs, ett booleskt värde som inte är "true" eller "false", eller ogiltig JSON. När EXTERNAL_AUTH listar flera metoder stänger ett sådant fel även av metoderna efter SAML (ldap, sedan saml, sedan oidc).Behöver IdP:n nå Overleaf, eller Overleaf IdP:n?
Behöver IdP:n nå Overleaf, eller Overleaf IdP:n?
Svar: Ingen av dem, för inloggning och utloggning: IdP:n och Overleaf utbyter bara meddelanden via användarens webbläsare. Endast om du konfigurerar IdP:n med en metadata-URL laddar den ned
${OVERLEAF_SITE_URL}/saml/meta.
