Kom i gang som applikasjonstilbyder

Kom i gang som applikasjonstilbyder

Denne veiledningen er for deg som utvikler en applikasjon og ønsker å bruke Fiks tilgangsstyring til eksterne applikasjoner som autorisasjonstjeneste.

Tjenesten brukes til å avgjøre om en bruker har tilgang til data for én eller flere kommuner, mens applikasjonen selv driftes og forvaltes i ditt eget miljø.

Merk: Tilgang vurderes i dag per kommunenummer.
Støtte for andre organisasjonsidentifikatorer (organisasjonsnummer eller tenant-id/FiksOrgId) er planlagt.

Forutsetninger

  • Dere har en organisasjon registrert i Fiks-plattformen og har en avtale på at dere kan være tilbyder
  • En applikasjon som kjører i deres eget miljø
  • Administrator-tilgang til Fiks-plattformen
  • Maskinporten-klient opprettet i Samarbeidsportalen

Oversikt

Oversikt

@startuml
left to right direction
skinparam activity {
  BackgroundColor<<Current>> LightSkyBlue
}

(*) --> "1. Registrer applikasjon\nfor tilgangsstyring"
--> "2. Opprett en\nMaskinporten-integrasjon"
--> "3. Implementer\ntilgangssjekk"
--> "4. Test\nintegrasjonen"
--> (*)
@enduml

1. Registrer applikasjonen

Via Fiks forvaltning

  1. Logg inn på Fiks forvaltning med ID-porten
  2. Naviger til Fiks tilgangsstyring til eksterne applikasjoner
  3. Velg Registrer ny applikasjon
  4. Fyll ut:
    • Applikasjonsnavn
    • Beskrivelse
    • URL til applikasjonen
    • Logo
  5. Klikk Opprett

Du får tilbake en App-ID (UUID) som brukes i API-kall.

Via API

Se Leverandør API dokumentasjon

2. Knytt Maskinporten-integrasjon

Applikasjonen må kunne autentisere seg maskin-til-maskin ved tilgangssjekk.

Dette gjøres ved å opprette en Maskinporten-integrasjon i Samarbeidsportalen (Digdir)

Detaljer om oppsett av Maskinporten er beskrevet i Digdirs dokumentasjon.

3. Implementer tilgangssjekk

API-endepunkt

Produksjon: https://api.fiks.ks.no Test: https://api.fiks.test.ks.no

Flyt ved brukerinnlogging

Flyt ved brukerinnlogging

@startuml
participant "Sluttbruker/Ansatt" as Bruker
participant "Din app" as App
participant "Maskinporten" as MP
participant "Fiks tilgangsstyring til\neksterne applikasjoner" as Kominn

Bruker -> App: Logger inn
note over App
  Bruker autentisert
  Har fødselsnummer
end note

App -> MP: Hent access token
MP --> App: Bearer token

App -> Kominn: POST /tilgang/api/v1/app/{appId}/tilganger\n{"brukerIdent": "12345678901"}
Kominn --> App: {"tilganger": [{"kommune": "0301"}, {"kommune": "5001"}]}

alt Har tilgang
    App -> Bruker: Vis data
else Ingen tilgang
    App -> Bruker: "Ingen tilgang"
end
@enduml