Systemarkitektur
Systemkontekst, ansvar og overordnet oppbygning for Altinn Autorisasjon.
Altinn Autorisasjon er ikke én applikasjon. Det er et sett med tjenester som sammen etablerer identitet og representasjon, beskriver beskyttede ressurser, administrerer rettigheter, evaluerer policy og registrerer sikkerhetsrelevante hendelser.
Tillitskjeden
En autorisasjonsbeslutning kan forstås som en kjede:
- Identitet: Hvem eller hvilket system handler?
- Part og representasjon: På vegne av hvilken person eller virksomhet skjer handlingen?
- Ressurs: Hva forsøker aktøren å bruke?
- Rettighet: Hvilke regler, roller, delegeringer eller samtykker gjelder?
- Beslutning: Er den konkrete handlingen tillatt i denne konteksten?
- Sporbarhet: Kan hendelsen og beslutningsgrunnlaget undersøkes i ettertid?
Systemkontekst
| Område | Hovedansvar | Sentrale komponenter |
|---|---|---|
| Identitet | Etablere autentisert identitetskontekst | Authentication |
| Part og representasjon | Beskrive personer, virksomheter, roller og representasjonsforhold | Register |
| Ressurs | Identifisere og beskrive tjenester og andre beskyttede objekter | Resource Registry |
| Rettighetsadministrasjon | Opprette, lese og endre delegeringer og tilgangsrelasjoner | Access Management |
| Maskinrepresentasjon | La et system opptre kontrollert på vegne av en virksomhet | Systembruker |
| Formålsbestemt fullmakt | Opprette og validere samtykker | Samtykke |
| Tilgangskontroll | Evaluere policy, rettigheter og kontekst | Authorization/PDP |
| Sporbarhet | Behandle og lagre autentiserings- og autorisasjonshendelser | Audit Log |
Viktige systemgrenser
Teamet eier autentiseringstjenesten og autorisasjonskomponentene som er beskrevet her. Teamet eier ikke identitetsleverandørene ID-porten og Maskinporten. Altinn Access Token eies av Team Platform og brukes som en avhengighet. Maskinporten-klientadministrasjon er en integrasjon, ikke en del av teamets systemansvar.
En PEP håndhever en beslutning nær den beskyttede tjenesten. PEP kan derfor ligge utenfor teamets komponenter, mens beslutningsgrunnlaget og PDP-funksjonen ligger i autorisasjonssystemet.
Arkitekturprinsipper
- Ressurser identifiseres eksplisitt; rettigheter gis ikke til udefinerte objekter.
- Identitet og representasjon behandles som forskjellige begreper.
- Administrasjon av rettigheter er skilt fra evaluering av rettigheter.
- PDP returnerer en beslutning; den kallende PEP håndhever den.
- Eksterne tokens er bevis som valideres og oversettes til en intern identitetskontekst.
- Hendelser skal kunne korreleres på tvers av komponentgrenser.
Den eksisterende arkitekturreferansen beholdes inntil videre. Den beskriver særlig XACML-rollene PDP, PAP, PRP, PIP, Context Handler og PEP. Denne siden er den nye systemorienterte inngangen.