Oprettelse af Servicebruger

Servicebrugere (også kendt som systembrugere), er brugere som repræsenterer en applikation.

Servicebrugere bruges primært til adgang til infrastrukturens Key-Value Store , men kan også i visse tilfælde på tildelt adgang til andre af infrastrukturens services.

Informationer til bestilling

Ved bestilling af servicebruger skal følgende oplysninger angives:

Information

Forklaring

Information

Forklaring

client-id

Dette er id på service brugeren.

applikationer og namespace

Dette er de tekniske navne på de applikationer som skal bruge servicebrugeren, samt det namespace som applikationen findes i. Det er muligt at angive mere end en.

Det er vigtigt at navnet på applikationen er angivet korrekt og præcist.

I Kubernetes-termer er det navnet på deployment

Roller (optional)

Hvis servicebrugeren skal have adgang til andre services, skal de krævede roller angives her.

Se også Access Control in eHealth Services

Estimeret tidsforbrug er 4 timer pr. bruger.

Anvendelse

For at få et access token for servicebrugeren anvendes OAuth 2.0 Client credentials grant:

POST /token Authorization: Basic bXktY2xpZW50LWlkOm15LWNsaWVudC1zZWNyZXQ= Content-Type: application/x-www-form-urlencoded grant_type=client_credentials

Her bruges client-id og client-secret som brugernavn/password til basic auth.

Alternativt kan disse angives i request body:

POST /token Content-Type: application/x-www-form-urlencoded grant_type=client_credentials client_id=my-client-id client_secret=my-client-secret

Servicebrugerens client-secret hentes fra vault. Dette kræver følgende konfiguration i values.yaml for den applikation som skal bruge den:

environment_secrets: <client-id>/keycloak/client-secret: CLIENT_SECRET: password

Med ovenstående konfiguration indeholder miljøvariablen CLIENT_SECRET nu servicebrugerens client-secret.