Skip to main content
Gå til innhold

Slik deler vi data i Sikt

  • Styres tilgang med Feide. Det vil si de registreres i Feides API-katalog
    • inntil kundeportalen er klar, så benyttes Dashboard for å registrere API-ene.
    • dersom de som skal registrere API-ene ikke har tilstrekkelige tilganger for å gjøre dette, kan man få bistand fra Andreas, Platon, eller noen av de andre Feide-administratorene.
  • Alle API-ene vil settes opp med API-eier som modererer tilgang i starten, så kan vi vurdere andre modeller siden. Men siden SIKT er API-eier, må vi også definere retningslinjer for hvem i Sikt som åpner for tilgang.
  • Klienter som skal bruke API-ene må bruke Feides mekanismer for dette.
    • OAuth, og token exchange (per nå)
    • Både systemtilganger og tilgang styrt av sluttbruker kan brukes. API-eier dokumenterer hva som gjelder per API.
    • Bruk gjerne subscopes for å gradere tilganger
  • Vi benytter ikke Feides API Gatekeeper
  • Vi benytter ikke tilgangsstyring med API-nøkler i Gravitee, alt går via Feide.
  • API settes opp til å validere JWT utstedt fra Feide i henhold til spesifikasjon/Standarder. API konfigureres med issuer ID, URL til JWKS eller lignende. Validering vil kunne gjøres på forskjellige måter, og vurderes av API utvikler. Mest vanlig vil være:
    • Gjøre inline validering i koden, eller som en middleware i applikasjonsserveren. Bruk gjerne så høynivå bibliotek som mulig, så man slipper å gjøre for mye manuelt. Idéellt sett skal ikke denne valideringen trenge å være mer enn noen få kodelinjer.
    • Vi kan benytte Sikts Gravitee instans til å validere JWT. Den må konfigureres spesifikt for det, og for mer detaljer om hvordan det kan gjøres, ta kontakt med Andreas eller Csaba.
  • Vi skal dokumentere og gjøre det enkelt for alle utviklere på tvers av hele sikt å få tilgang og ta i bruk API-ene.
  • Team datadrevet Sikt vil forvalte en oversikt over alle API-ene vi gjør tilgjengelig i denne omgangen. Kanskje på interndocs, eller et annet egnet sted, med litt utfyllende informasjon utover det som er tilgjengelig i API-katalogen. F.eks. kan det være greit å ta inn ting som openapi specification og retningslinjer for bruk osv.