Altinn / altinn-access-management

PoC for new auth admin UI
MIT License
6 stars 3 forks source link

Tilgangsliste Autorisasjon | accesslist/authorize API for tjenesteeier/broker #823

Open jonkjetiloye opened 2 months ago

jonkjetiloye commented 2 months ago

Beskrivelse

Team Tilgangsinfo har utviklet funksjonalitet i Ressursregisteret for å definere Tilgangslister knytt til ressurser i registeret som fungerer som ett ekstra autorisasjonslag på toppen av normal autorisasjon i Altinn (gjennom roller og enkeltdelegeringer). Dette autorisasjonslaget gjelder for avgiveren konteksten av en autorisasjon, og det er hver enkelt tjenesteeier som for sine ressurser evt. velger å aktiverer Tilgangsliste-autorisasjon og administrerer selve listene og hvilke organisasjoner de gir tilgang til hvilke ressurser.

I dialog med Broker teamet har det kommet frem behov for ett API for de tjenesteierene som ikke ønsker å bruke Altinn Autorisasjon men i stedet bare benytte Tilgangslister for å autorisere partene som direkte legges inn i lister for sin ressurs.

Ett slikt API ble laget for testing under utvikling av PDP Decision/Authorize API endringen for AccessList integrasjon og kan evt. hentes ut av commit historikken der for å publisere dette: https://github.com/Altinn/altinn-authorization/pull/1024/commits/92dbcac10241f2829eb5ce858784dc2c14fdf8ec#diff-8dde3ae7d1bfd7c62b3ac95853613a1460656741abc776e9041abedc516c2998

Definisjoner

Se #699

Avklaringer

In scope

På bakgrunn av begrensninger i AccessList implementasjonen er det ikke støtte for knytning mellom subressurser i XACML policy og ActionFilter (enkelt action begrensning for members). AccessList støtter ressurskobling enten uten action filter (alle actions er lov), eller med action filter som vil matche action på tvers av alle ressurs og subressurs nivåer i policy.

F.eks Read tilgang for en ressurs vil altså gjelde Read for alle del-ressurser.

Akseptansekriterier

AC1

GITT NÅR SÅ

Oppgaver

### Trusselmodellering
- [ ] Åpner denne endringen for mulige nye trusler eller misbruk?
### Backend
- [ ] Legg til oppgaver her
### Dokumentasjon
- [ ] Swagger doc + Guide
### Test
- [ ] Add a draft title or issue reference here

Additional Information

Tilgangsliste Open API Spec: https://docs.altinn.studio/api/resourceregistry/spec/#/Access%20List

AccessList Policy Example: https://github.com/Altinn/altinn-studio-docs/blob/master/content/authorization/what-do-you-get/resourceregistry/rrr/policy_rrr_accesslist_subject.xml