Open TheTechArch opened 1 week ago
Tror dette hadde funket bra, eneste mismatchen er som nevnt det at appen må oppdatere policy. En kategori av ting vi ønsker å gjøre i appens kontekst er cleanup og bookkeping av intern state. I den settingen er det rart at vi ber app-koden om lov til å gjøre ting som appen må gjøre for å funke (det burde ikke være optional/opt-in)
Beskrivelse
Det er behov for at Apper i Altinn platformen utfører operasjoner på data som krever tilgangstyring hvor det ikke er en sluttbruker som er den som direkte trigger operasjonen. I dag utføres slike jobber med at Appene tar vare på token fra bruker og bruker det til den asynkrone prosessen er over. Et eksempel på slikt bruk er PDF generering.
Man ønsker å se på en løsning som muligjør at appene kan trigger prosesser som får lov å endre data uten at denne prosessen sitter på en bruker token.
Krav
Definisjoner
In scope
Altinn App token endepunkt i Altinn Autentication
Et nytt endepunkt introduseres som lar App kalle endepunkt for å generere Altinn token. Endepunktet bør ha følgende begrensinger
Endepunktet kan lages slik at Appen autentiseres seg med Access Token som appen selv genererer basert på sertifikat tilgjengelig i AKS.
Endepunkt i autentisering validererer at ISS i token matcher org i app identifer som det bes om.
Autorisasjon av App token
For å kunne autorisere tilgang til at App kan modifisere data tilknyttet en instance for en avgiver så må reglene i policy oppdateres slik at de definerer hva appen kan utføres. I mange tilfeller vil det mest sannsynlig være det å kunne lese og skrive data til instance. F.eks legge til PDF eller oppdatere status på en instance.
Relle behov er beskrevet i denne issue https://github.com/Altinn/app-lib-dotnet/issues/813
Vi må legge til en regel som referer til App identity som utførende av operasjonen. Formatet må nok være på {org}/{app} formatet
Out of scope (evt. senere leveranse)