4. Åtkomstintyg - claims (utkast)
Claims
Tabellen mappar OIDC standard claims mot relevanta begrepp från SAMBI och HSA. Informationen levereras via Id token eller via UserInfo. Konsument begär attribut i enlighet med standard.
Attributet levereras av behörighetstjänsten |
Attribut levereras endast utv/testmiljö |
Attributet levereras inte i PROD |
asdfsdf
OIDC Claims | Källa |
---|---|
Standard | |
sub | Skapas av Behörighetstjänsten
Ett unikt-id genereras av behörighetstjänsten. T.ex. 6da23875-9a10-42ed-84de-0dd18b0275be |
name | Idp metadata. Personens ev. mellannamn och efternamn enligt SKV.
|
given_name | Idp metadata Personens tilltalsnamn enligt SKV.
|
family_name | |
middle_name | |
nickname | |
preferred_username | Idp (Inera säkerhetstjänster) Subject.NameID
|
profile | |
picture | |
website | |
email_verified | |
gender | |
birthdate | |
zoneinfo | |
locale | |
phone_number | |
phone_number_verified | |
address | |
updated_at | Genereras av behörighetstjänsten. |
Tillägg | |
employeeHsaId | IdP metadata Personens HsaId. Notera att en person kan ha flera employeeHsaId utgivna från olika katalogägare inom HSA. Ett employeeHsaId är dock alltid unikt identifierande och spårbart till individen.
|
Idp metadata
| |
authorization_scope | HSA
|
attribute | HSA
|
organizational_scope | HSA
|
unit | HSA
|
include_units_below | HSA
|
adminHsaId | HSA
|
protectedPerson | HSA
|
authnMethod | Idp metadata
|
x509IssuerName | Idp metadata
|
levelOfAssurance | Idp metadata
|
healthcareProfessionalLicense | Idp metadata Legitimerad yrkesgrupp enligt Socialstyrelsens HOSP register. Notera att detta är personlig egenskap, ej kopplat till ev. uppdrag hos organisation.
|
paTitleCode | Idp metadata Personens Befattningskoder. AID-kod beslutad av SKL
|
personalPrescriptionCode | Idp metadata Personlig förskrivarkod.
|
commissionRight | Idp metadata Medarbetaruppdragets rättigheter
|
commissionPurpose | Idp metadata Medarbetaruppdragets ändamål
|
systemRole | Idp metadata En tilldelad individuell egenskap för person inom ett visst system / säkerhetsdomän
|
commissionName | Idp metadata Medarbetaruppdragets HsaId
|
commissionHsaId | Idp metadata Medarbetaruppdragets namn
|
healthCareUnitHsaId | Idp metadata Vårdenhetens HsaId
|
healthCareProviderHsaId | Idp Vårdgivarens HsaId
|
healthCareProviderName | Idp Vårdgivarens namn
|
Authorization_scope (åtkomstintyget)
För att hämta en användares behörighetsstyrande egenskaper (attribut), kan följande tekniker användas:
- OpenID Connect - Id Token (JWT-format).
- OpenID Connect - UserInfo endpoint.
Information om vilka egenskaper användaren har inom ett visst behörighetsområde kan kommuniceras på olika sätt.
- Genom att ange önskat behörighetsområde i begäran till OIDC OP.
Begäran: Authorization_scope
Vid begäran av "Individual Claims Request" kan följande parameter användas.
Innehåll | Beskrivning | Mappning (HSA: GetAdminCredentialsForPersonIncludingProtectedPerson) |
---|---|---|
employeeHsaId | Användarens identitet. Hämtas från autentiserad användares SAML biljett. (http://sambi.se/attributes/1/employeeHsaId) | employeeHsaId HSA-id (hsaIdentity) |
authorization_scope | Behörighetsområdeskod (Frivillig parameter) T.ex. authorization_scope="behörighetsområdeskod" | authorizationScopeCode (hsaDomainCode) |
Svar: Authorization_scope
Innehåll | Kardinalitet | Beskrivning | Källa (HSA: GetAdminCredentialsForPersonIncludingProtectedPerson) |
---|---|---|---|
attributes.attribut | 0..* | ||
attribute.attribute | 1..1 | Behörighetsområdeskod | authorizationScopePropertyCode (hsaDomainAreaCode) |
attribute.name | 1..1 | Behörighetsområdeskodens namn T.ex. "Administratör" | authorizationScopePropertyName |
attribute.description | 1..1 | Behörighetsområdets beskrivning. T.ex. En beskivande text som förklarar Behörighetsområdeskoden ("rollen") | authorizationScopePropertyDescription |
attribute.organizational_scope | 1..1 | ||
unit | 1..* | ||
attribute.organizational_scope.unit.org-id | 1..1 | Enhetens HSA-id | AuthorizationScopePropertyType.SectorType.unitHsaId |
attribute.organizational_scope.unit.org-name | 1..1 | Enhetens namn | AuthorizationScopePropertyType.SectorType.name |
attribute.organizational_scope.unit.include_units_below | 1..1 | Boolean True innebär att Enhetens alla hierarkiskt underliggande enheter ingår, enheten representerar en hel organisationsgren, Om värdet utelämnas från HSA returneras "false" | AuthorizationScopePropertyType.SectorType.sectorFlag |
authorization scope.organizational_scope.unit.adminHsaId | 1..1 | HSA-id för det administrativa uppdrag varifrån uppgifterna hämtats. Returneras främst för att få spårbarhet och underlätta supportärenden | AuthorizationScopePropertyType.SectorType.administrativeCommissionHsaId |
Nedanstående exempel används "Individual Claims Request" för att specificera vilka attribut som efterfrågas. Vi har även möjlighet att ange värden för efterfrågade attribut.
- Användarens id efterfrågas (user-id)
- authorization_scope (tidigare domain) efterfrågas
- Här anger vi ett värde för att identifiera vilken authorization_scope (t.ex. authorization_scope="behörighetsområdeskod") som efterfrågas.
Exempel svarsmeddelande (claim: authorization_scope): Observera att "authorization_scope" levereras escaped \" .
|
authorization_scope är en sträng som innehåller ett "escaped" JSON objekt.
{ "HealthcareProviderHsaId": "WS1000000000-3PC5", "HealthcareProviderName": "TF23 GetMiu", "HealthcareUnitHsaId": "WS1000000000-3PG1", "acr": "1", "aud": "demo-app", "auth_time": 1516884099, "authnMethod": "urn:oasis:names:tc:SAML:2.0:ac:classes:TLSClient", "authorization_scope": [ "{\"attributes\":[{\"attribute\":\"NMT HJV;001\",\"name\":\"Redaktör e-tjänst\",\"description\":\"En liten notering...\",\"organizational_scope\":[{\"org_id\":\"TSTNMT2321000156-10D7\",\"name\":\"STB_VG2_VE1\",\"include_units_below\":true}]},{\"attribute\":\"HJV;003\",\"name\":\"Tjänstesupport\",\"description\":\"Tjänstesupport Beskrivning\",\"organizational_scope\":[{\"org_id\":\"VPW2321000040-1000\",\"name\":\"Region Östergötland\",\"include_units_below\":true}]},{\"attribute\":\"377;14\",\"name\":\"Behörighetsegenskaper för TEST 1B Roll 14\",\"description\":\"Behörighetsegenskapsobjekt för HSA Förvaltningens Tjänstekontraktstester\",\"organizational_scope\":[{\"org_id\":\"WS1000000000-3WRM\",\"name\":\"TF250 Administrativa Uppdrag\",\"include_units_below\":true},{\"org_id\":\"WS1000000000-3WRP\",\"name\":\"Division B\",\"include_units_below\":true}]},{\"attribute\":\"HJV;001\",\"name\":\"Redaktör kontaktkort\",\"description\":\"Redaktör kontaktkort Beskrivning\",\"organizational_scope\":[{\"org_id\":\"VPW2321000040-1000\",\"name\":\"Region Östergötland\",\"include_units_below\":true}]},{\"attribute\":\"HJV;002\",\"name\":\"Redaktör e-tjänst\",\"description\":\"Redaktör e-tjänst Beskrivning\",\"organizational_scope\":[{\"org_id\":\"VPW2321000040-1000\",\"name\":\"Region Östergötland\",\"include_units_below\":true}]},{\"attribute\":\"NMT HJV;004\",\"name\":\"Ytterligare\",\"description\":\"ny beskrivning...\",\"organizational_scope\":[{\"org_id\":\"TSTNMT2321000156-10D7\",\"name\":\"STB_VG2_VE1\"},{\"org_id\":\"TSTNMT2321000156-10D8\",\"name\":\"STB_VG2_VE2\"}]},{\"attribute\":\"NMT HJV;002\",\"name\":\"Redaktör kontaktkort\",\"description\":\"En liten notering...\",\"organizational_scope\":[{\"org_id\":\"TSTNMT2321000156-10D7\",\"name\":\"STB_VG2_VE1\",\"include_units_below\":true}]},{\"attribute\":\"MALIN T1;002\",\"name\":\"Egenskap 2\",\"description\":\"text igen...\",\"organizational_scope\":[{\"org_id\":\"TSTNMT2321000156-10D7\",\"name\":\"STB_VG2_VE1\",\"include_units_below\":true}]},{\"attribute\":\"HSA Förvaltningens Cykelservice;Däckreparatör\",\"name\":\"Däckreparatör\",\"description\":\"Behörighetsegenskapsobjekt för HSA Förvaltningens Tjänstekontraktstester\",\"organizational_scope\":[{\"org_id\":\"WS1000000000-3WRM\",\"name\":\"TF250 Administrativa Uppdrag\",\"include_units_below\":true}]},{\"attribute\":\"MALIN T1;001\",\"name\":\"Egenskap 1\",\"description\":\"text...\",\"organizational_scope\":[{\"org_id\":\"TSTNMT2321000156-10D7\",\"name\":\"STB_VG2_VE1\"},{\"org_id\":\"VPW2321000040-6VRX\",\"name\":\"Helsa Vårdcentral Kneippen\",\"include_units_below\":true}]}]}" ], "azp": "demo-app", "employeeHsaId": "TST5565594230-11N9", "exp": 1516884399, "given_name": "Nils", "iat": 1516884099, "iss": "https://utv-oidc.inera.se/auth/realms/1177", "jti": "f20999e5-fdf3-4367-b768-f3c1cfae9d3e", "levelOfAssurance": "urn:sambi:names:ac:classes:LoA3", "middleAndSurname": "Karlsson Svensson", "nbf": 0, "preferred_username": "c6f71eda-1d85-4c69-ba9c-50dbd030a7ed", "session_state": "293676a8-8d1c-44c4-9bfd-623fb0332478", "sub": "4ab86a5e-4b5c-4b1f-8968-5013e31b421c", "typ": "ID", "x509IssuerName": [ "CN=SITHS Type 1 CA v1 PP,O=Inera AB,C=SE" ] }
Exempel bearbetad authorization_scope (från ovanstående exempel):
{ "attributes": [ { "attribute": "NMT HJV;001", "name": "Redaktör e-tjänst", "description": "En liten notering...", "organizational_scope": [ { "org_id": "TSTNMT2321000156-10D7", "name": "STB_VG2_VE1", "include_units_below": true } ] }, { "attribute": "HJV;003", "name": "Tjänstesupport", "description": "Tjänstesupport Beskrivning", "organizational_scope": [ { "org_id": "VPW2321000040-1000", "name": "Region Östergötland", "include_units_below": true } ] }, { "attribute": "377;14", "name": "Behörighetsegenskaper för TEST 1B Roll 14", "description": "Behörighetsegenskapsobjekt för HSA Förvaltningens Tjänstekontraktstester", "organizational_scope": [ { "org_id": "WS1000000000-3WRM", "name": "TF250 Administrativa Uppdrag", "include_units_below": true }, { "org_id": "WS1000000000-3WRP", "name": "Division B", "include_units_below": true } ] }, { "attribute": "HJV;001", "name": "Redaktör kontaktkort", "description": "Redaktör kontaktkort Beskrivning", "organizational_scope": [ { "org_id": "VPW2321000040-1000", "name": "Region Östergötland", "include_units_below": true } ] }, { "attribute": "HJV;002", "name": "Redaktör e-tjänst", "description": "Redaktör e-tjänst Beskrivning", "organizational_scope": [ { "org_id": "VPW2321000040-1000", "name": "Region Östergötland", "include_units_below": true } ] }, { "attribute": "NMT HJV;004", "name": "Ytterligare", "description": "ny beskrivning...", "organizational_scope": [ { "org_id": "TSTNMT2321000156-10D7", "name": "STB_VG2_VE1" }, { "org_id": "TSTNMT2321000156-10D8", "name": "STB_VG2_VE2" } ] }, { "attribute": "NMT HJV;002", "name": "Redaktör kontaktkort", "description": "En liten notering...", "organizational_scope": [ { "org_id": "TSTNMT2321000156-10D7", "name": "STB_VG2_VE1", "include_units_below": true } ] }, { "attribute": "MALIN T1;002", "name": "Egenskap 2", "description": "text igen...", "organizational_scope": [ { "org_id": "TSTNMT2321000156-10D7", "name": "STB_VG2_VE1", "include_units_below": true } ] }, { "attribute": "HSA Förvaltningens Cykelservice;Däckreparatör", "name": "Däckreparatör", "description": "Behörighetsegenskapsobjekt för HSA Förvaltningens Tjänstekontraktstester", "organizational_scope": [ { "org_id": "WS1000000000-3WRM", "name": "TF250 Administrativa Uppdrag", "include_units_below": true } ] }, { "attribute": "MALIN T1;001", "name": "Egenskap 1", "description": "text...", "organizational_scope": [ { "org_id": "TSTNMT2321000156-10D7", "name": "STB_VG2_VE1" }, { "org_id": "VPW2321000040-6VRX", "name": "Helsa Vårdcentral Kneippen", "include_units_below": true } ] } ] }