Autorisasjon

Maskinporten token

Denne leksjonen vil vise hvordan man lager en JWT (JSON Web Token) grant og bruker det til å hente et Maskinporten token. For overordnet beskrivelse refererer vi til Maskinportens guide for API-konsumenter. Koden under er skrevet i C# og .Net Core 3.1 og kan ses i sin helhet på Github. JWT grant oppsett JWT grantet består av to deler: Header - som beskriver hvordan hvordan JSON Web Tokenet er signert. »

Hente Reportee ID

I denne leksjonen vil vi vise hvordan man henter en Reportee ID over REST hvis man har fødselsnummer og etternavnet til en person. Dette er IDen til personen som senere skal gis rettigheter til. Kodeeksemplene som brukes i denne leksjonen er hentet fra ReporteeHandler.cs og Reportee.cs. POST reportees/ReporteeConversion REST endepunket som skal brukes er POST reportees/ReporteeConversion. I tillegg til Altinn token så krever dette endepunktet API-nøkkel. HTTP requesten ser slik ut. »

Hente delegeringer

I denne leksjonen vi vi vise hvordan man kan hente delegerte rettigheter som er gitt til en person over REST. Koden vi viser i denne leksjonen kan ses i sin helhet i AuthorizationHandler.cs i det tilhørende C#/.Net prosjektet. GET authorization/Delegations REST kallet vi skal bruke for å hente alle rollene og rettighetene en person har for en organisasjon er GET {who}/authorization/Delegations/{receiverId}. {who} er aktøren som det gis tilgang til. Man kan bruke det forhåndsdefinerte argumentet my for å referere til samme aktør som har autentisert seg i REST kallet. »

Nye delegeringer

I denne leksjonen vil vi vise hvordan man delegerer nye rettigheter til en person over REST. Leksjonen bygger på modeller og konverterere vil definerte i tidligere leksjoner. Koden vi viser i denne leksjonen kan ses i sin helhet i AuthorizationHandler.cs i det tilhørende C#/.Net prosjektet. POST authorization/Delegations For å delegere nye roller og rettigheter til en aktør over REST skal man bruke POST api/{who}/authorization/Delegations. RightHolder modellen som skal brukes som body i kallet skal inneholde følgende: »

Fjerne delegeringer

I denne leksjonen vi vi vise hvordan man kan trekke rettigheter som er gitt til en person over REST. Koden vi viser i denne leksjonen kan ses i sin helhet i AuthorizationHandler.cs i det tilhørende C#/.Net prosjektet. DELETE authorization/Delegations Det er ikke alle tilganger i Altinn som kan styres over REST. Man kan ha tilganger på grunn av en rolle man har for organisasjonen. Her vil vi derfor anta at personen har fått tilgang til en tjeneste som en delegering, som man nå ønsker å trekke tilbake. »

Scopes for begrensning av tilganger

Scopes for begrensning av tilgang Alle API-forespørsler til Altinn 2.0 krever en API-nøkkel som vil være begrenset til en eller flere områder av API-et. I tillegg kan du velge å provisjonere klienter i ID-porten/Maskinporten med et eller flere scopes, som vil ytterligere begrense hvilke operasjoner klienten kan utføre. Merk at scopes er kun en mekanisme for begrensning av eksisterende rettigheter; hvis din organisasjon eller API-nøkkel ikke har tilgang til et gitt API vil ikke scope på en klient gi deg tilgang. »

Introduksjon til Postman og Altinn API

Nødvendig forarbeid - Postman introduksjon Følgende steg er nødvendige for å følge leksjonene i denne introduksjonen. Hvordan importere Altinn API collection og environment Denne leksjonen vil vise deg hvordan man importerer Altinns API Collection og Environment som er publisert som egne filer på Github. REST forespørsler mot åpne API-endepunkter Hvordan bruke Postman til å utføre REST-forespørsler mot de åpne Altinn API-endepunktene, som ikke krever autentisering eller API-nøkler. »

Veiledning API klient

Klienten vil gjøre følgende:

  1. Hente et OAuth2 bearer token fra Maskinporten.
  2. Hente et Altinn autentiseringstoken basert på Maskinporten tokenet.
  3. Konvertere et fødselsnummer til et Altinn reportee id
  4. Hente rettigheter som en person har for en virksomhet
  5. Gi nye rettigheter fra en virksomhet til en person
  6. Slette en rettighet en person har for en virksomhet
»