/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).
URL og verb: Følgende URL skal åpnes i nettleseren: https://{miljø}/sts/oidcprov/v2/authorize (dvs. GET)
Plassering | Navn | Type | Beskrivelse |
---|---|---|---|
Querystring (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).
URL og verb: Følgende URL skal åpnes i nettleseren: https://{miljø}/sts/oidcprov/v2/authorize (dvs. GET)
Plassering | Navn | Type | Påkrevd | Beskrivelse |
---|---|---|---|---|
Querystring (URL) | 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 | Betinget | Denne er frivillig. Men, skal være med dersom man ønsker at det ved redirect benyttes en HTML-form for å returrne uthorization code (og state) i stedet for default som er at de returneres som query-parameter. Verdi (hvis parameteren er med): “form_post” Dette er anbefalt for å unngå at authorization code blir værende i nettleser sin browser-historikk. | |
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) | Frivillig (men anbefalt) | Tilfeldig kryptografisk verdi som genereres av klienten og som returneres som en del av ID-tokenet | |
ui_locales | string | Frivillig | Språk som brukergrensesnittet skal ha, foreløpig støttes kun verdien "nb". (Hvis ikke satt, benyttes “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
Helsenorge redirecter til redirect_uri som ble sendt inn til /Authorize eller /par-endepunktet og sender med følgende parametere:
Plassering | Navn | Type | Beskrivelse
|
---|---|---|---|
| code | string | Autorisasjonskode som må benyttes for å etterpå få Token i /Token. |
state | string |
|
Response - Autentisering feilet
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 |
---|---|---|
400 | invalid_request | The request is missing a required parameter, includes an |
400 | invalid_client | Client authentication failed (e.g., unknown client, no |
400 | unauthorized_client | The authenticated client is not authorized to use this |
503 | temporarily_unavailable | The authorization server is currently unable to handle |