Oprettelse og brug af Servicebruger
  • Ready for review
  • Oprettelse og brug 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 https://saml.{env}.ehealth.sundhed.dk/auth/realms/ehealth/protocol/openid-connect/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 https://saml.{env}.ehealth.sundhed.dk/auth/realms/ehealth/protocol/openid-connect/token Content-Type: application/x-www-form-urlencoded grant_type=client_credentials client_id=my-client-id client_secret={my-client-secret}

    Erstatte {my-client-secret}` med servicebrugerens client-secret.

    Note: I begge tilfælde skal du erstatte {env} med den env, du bruger.

    Brug af hemmeligheden fra Vault

    Servicebrugerens client-secret hentes fra Vault (Using secrets from Vault ). Dette kræver at Vault url’en er konfigureret (tjek artiklen) og følgende konfiguration i values.yaml for den applikation som skal bruge den:

    environment_secrets: keycloak/client-secret: CLIENT_SECRET: password

    Bemærk! Du bør ikke erstatte password med din client-secret! Bare skriv det som i eksemplet.

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