Innlogging
AuthPolicy-ressursen på Kubernetes kan brukes til å utføre innlogging for alle aktuelle identitetstilbydere.
Brukeren blir omdirigert til innlogging før trafikken treffer din applikasjon, og brukerens token lagres på klientsiden
kryptert med en hemmelighet kun din applikasjon har tilgang til.
Les mer om innlogging og sesjonshåndtering i Ztoperator-dokumentasjonen
For applikasjoner som trenger lengre brukersesjoner uten re-autentisering, kan scopet offline_access legges til i
AuthPolicy-feltet spec.autoLogin.scopes for å aktivere støtte for refresh-tokens.
Les mer om bruk av offline_access og refresh-tokens i Ztoperator-dokumentasjonen.
Hvordan fungerer innlogging med Ztoperator
SKIP-plattformen bruker et service mesh, kalt Istio. Istio gjør at det kjører en istio-proxy-sidecar sammen med
applikasjonen din i samme Kubernetes-pod. Når du oppretter en AuthPolicy-ressurs for applikasjonen din med
autoLogin aktivert, vil Ztoperator sørge for at det opprettes en rekke Istio-spesifikke Kubernetes-ressurser som
håndterer innlogging og autorisasjon:
EnvoyFilter, som konfigurerer hvordanistio-proxy-sidecar'en, som kjører sammen med applikasjonen din i samme Kubernetes-pod, skal håndtere innloggingsflyten. Denne sørger for at uautentisert trafikk kastes inn i en OAuth2.0-innloggingsflyt, som ender med et kryptert token i form av en session cookie på klientsiden.RequestAuthentication, som verifiserer JWT-tokenet på inkommende trafikk opp mot konfigurert IDP og audience.AuthorizationPolicy, som utfører autorisasjon basert på claims i tokenet, for eksempel grupper eller roller.