/authorize

Benyttes for å håndtere pålogging av innbygger og evnt. samtykke til datadeling. Dette endepunktet må åpnes i en nettleser.

Spesifikasjoner

Request - For klienter som benytter Pushed Authorization Request (PAR)

Pushed Authorization Request (PAR) er påkrevd for alle public clients (mobilapper) og er valgfritt, men sterkt anbefalt for alle confidential clients (server side webapper).

Følgende URL skal åpnes i nettleseren: https://{miljø}/sts/oidcprov/v2/authorize

Plassering

Navn

Type

Beskrivelse

Plassering

Navn

Type

Beskrivelse

URL

client_id

string

Påkrevd

 

request_uri

string

request_uri returnert til klienten fra /par-endepunktet

Request - For klienter som ikke benytter Pushed Authorization Request (PAR)

Pushed Authorization Request (PAR) er påkrevd for alle public clients (mobilapper) og er valgfritt, men sterkt anbefalt for alle confidential clients (server side webapper).

Følgende URL skal åpnes i nettleseren: https://{miljø}/sts/oidcprov/v2/authorize

Plassering

Navn

Type

Påkrevd

Beskrivelse

Plassering

Navn

Type

Påkrevd

Beskrivelse

Querystring

client_id

string

Ja

Client ID verdien

 

redirect_uri

string

Ja

Redirect URL. Må være en URL som helsenorge har forhåndsregistrert på klienten.

 

response_type

string

Ja

Skal ha verdien "code"

 

response_mode

string

Ja

“form_post” eller “query”. “form_post” anbefales da authorization code som returneres vil postes som en form-parameter i steden for å eksponeres som en querystring på URL.

 

state

string (max 1000 tegn)

Ja

Tilfeldig kryptografisk verdi som genereres av klienten og som returneres ved redirect tilbake til klienten etter fullført autentisering

 

nonce

string (max 1000 tegn)

Ja

Tilfeldig kryptografisk verdi som genereres av klienten og som returneres som en del av ID-tokenet

 

ui_locales

string

Ja

Språk som brukergrensesnittet skal ha, må ha verdien "nb"

 

scope

string

Ja

Må inneholde "openid" og evnt. "offline_access" i tillegg dersom klienten skal kunne få utstedt “refresh-token”.

(Øvrige tilganger klienten får til API’er på Helsenorge styres av konfigurasjonen av klienten på Helsenorge).

 

code_challenge

string

Ja

PKCE, generer først en code_verifier som er en kryptografisk tilfeldig streng mellom 43-128 tegn, gjør deretter følgende for å få code_challenge verdien: BASE64URL-ENCODE(SHA256(ASCII(code_verifier)))

 

code_challenge_method

string

Ja

PKCE, skal ha verdien "S256"

Response - Vellykket autentisering

Redirect via Post (response_mode=form_post)

Helsenorge redirecter til redirect_uri som ble sendt inn til /Authorize eller /par-endepunktet og sender med følgende POST-parametere:

Plassering

Navn

Type

Beskrivelse

 

Plassering

Navn

Type

Beskrivelse

 

Body

code

string

Autorisasjonskode som må benyttes for å etterpå få Token i /Token.

 

state

string

  • Hvis PAR-benyttes: state-parameter som ble sendt inn til /par-endepunktet

  • Hvis PAR-ikke benyttes: state-parameter som ble sendt inn til /Authorize-endepunktet

Response - Autentisering feilet

Plassering

Navn

Type

Beskrivelse

Plassering

Navn

Type

Beskrivelse

Body hvis response_mode=form_post, Querystring hvis response_mode=query

error

string

Sendes med: Ja



error_description

string

Sendes med: Ja



state



Sendes med: Ja, oppgitt state parameter fra steg 3

Response - Autentisering feilet - Mulige feilkoder

HTTP-status kode

Feilkode (error)

Beskrivelse

HTTP-status kode

Feilkode (error)

Beskrivelse

400

invalid_request

The request is missing a required parameter, includes an
unsupported parameter value (other than grant type),
repeats a parameter, includes multiple credentials,
utilizes more than one mechanism for authenticating the
client, or is otherwise malformed

400

invalid_client

Client authentication failed (e.g., unknown client, no
client authentication included, or unsupported
authentication method). The authorization server MAY
return an HTTP 401 (Unauthorized) status code to indicate
which HTTP authentication schemes are supported. If the
client attempted to authenticate via the "Authorization"
request header field, the authorization server MUST
respond with an HTTP 401 (Unauthorized) status code and
include the "WWW-Authenticate" response header field
matching the authentication scheme used by the client.

400

unauthorized_client

The authenticated client is not authorized to use this
authorization grant type.

503

temporarily_unavailable

The authorization server is currently unable to handle
the request due to a temporary overloading or maintenance
of the server.