Skip to content

Hvordan teste APIene og systemene vi lager

Vegard Wright edited this page Feb 6, 2025 · 35 revisions

Authentication

Denne veiledningen gir en oversikt over viktige begreper, oppsett av testdata og metoder for å opprette en Systembruker i Altinn i testsamenheng.

Opprett systembruker på system

1. Begreper

  • Partyid: En intern ID brukt i Altinn (knyttet til Altinn2). Eksempel: 51686389.

2. Testdata Setup

2.1 Ressursregisteret

For å opprette ressurser i ressursregisteret, gå til Altinn Studio Dev. Bruk din GitHub-konto knyttet til Altinn. Dette er nødvendig for å kunne opprette et system i Systemregisteret. For å endre på ressurser gå til Resource Admin

2.2 Tilgangsstyring og Tokens

1. Maskinporten-token

For leverandørstyrte endepunkter har vi opprettet en egen Maskinporten-klient du kan benytte: Maskinporten-klient.

Egenskaper for Maskinporten-klienten:

  • Navn: SystembrukerForSpesifikkOrgVegard
  • Leverandørs orgnummer: 312605031

Denne Maskinporten-klienten benyttes i våre E2E-tester.

2. Sluttbruker-token / Altinn-token

Dersom du trenger å gjøre forespørsler mot API på vegne av en sluttbruker, eller ønsker å slippe å bruke Maskinporten-token, kan du benytte Altinn-testtools-token-generator (passordbeskyttet).

URLer

  1. Sluttbruker-token (for personlig autentisering på vegne av spesifikk bruker):
    GetPersonalToken?env=at24&scopes=altinn:instances:read&pid=21883047939&userid=20012755&partyid=50651214&authLvl=3&ttl=3000

Merk: Endepunktet bruker GetPersonalToken, og parametrene inkluderer pid, userid, og authLvl for autentisering av sluttbruker.

  1. Enterprise-token (for systemautentisering på vegne av organisasjon):
    GetEnterpriseToken?env=at22&scopes=altinn:authentication/systemuser.request.write&org=digdir&orgNo=991825827&ttl=60000

Merk: Endepunktet bruker GetEnterpriseToken, og parametrene inkluderer org og orgNo for identifisering av organisasjon.

Viktig: For å få tilgang til token-generatoren, trenger du brukernavn og passord. Kontakt en person i Authentication- eller Authorization-teamet for tilgang.

3. Opprettelse av Systembruker

3.1 API-dokumentasjon

For mer informasjon om autentisering, se API-dokumentasjonen: System Authentication for API Providers.

3.2 Metoder for opprettelse

Du kan opprette en systembruker ved å bruke en av følgende metoder:

  • E2E-test: Bruk vår integrasjonstest: System Integration Tests.
  • Bruno: Et verktøy som snart blir tilgjengelig i repoet.

4. Sluttbrukerstyrt Opprettelse av Systembruker

4.1 GUI

Opprett systemtilgang ved å bruke GUI:


4.2 SmartCloud Test-GUI

Opprett systemtilgang for sluttbruker via SmartCloud:

5. Leverandørstyrt Opprettelse av Systembruker

  • Dokumentasjon og veiledning for leverandørstyrt opprettelse kommer snart.

6. Testscenarier

6.1 Systembruker

6.2 Systembruker med Apps.
  • Per nå (leveranse 3) henter vi alle rettigheter for en app som er definert i altinnstudio hos Access Management, og sender alt vi får i responsen til delegerings-APIet. Et testscenario her kan være å sette sammen ulike konfigurasjoner for en App og se at du får opprettet Systembruker med appen. En videre sjekk bør handle om bruksmønsteret til appen med systembrukertoken (kost/nytte-vurdering).

7. Ytterligere verifikasjon mot Authorization

Systembruker lar deg ikke per nå slå opp hvilke rettigheter du har på en enkel måte, men man kan sjekke dette direkte i databasen til Authorization:

  • SELECT resourceregistrydelegationchangeid, delegationchangetype, resourceid_fk, offeredbypartyid, coveredbypartyid, coveredbyuserid, performedbyuserid, performedbypartyid, blobstoragepolicypath, blobstorageversionid, created, fromuuid, fromtype, touuid, totype, performedbyuuid, performedbytype FROM delegation.resourceregistrydelegationchanges WHERE touuid = 'a6355a68-86b8-4344-8a81-REDACTED' --Din SystemUserUuid her ORDER BY resourceregistrydelegationchangeid ASC;