Beschrijving
Binnen Koppeltaal is het van belang dat een 'SMART on FHIR' server implementatie precies aangeeft wat het kan (Capability). Clients kunnen vervolgens bij de server diens capabilities opvragen.
Overwegingen
De server MOET de FHIR OAuth-autorisatie endpoints en eventuele optionele SMART-mogelijkheden die hij ondersteunt overbrengen met behulp van een Well-Known Uniform Resource Identifiers (URI's) JSON-bestand.
In eerdere versies van SMART werden sommige van deze details ook overgebracht via de CapabilityStatement van een FHIR server. Dit mechanisme is volgens SMART nu verouderd en dient daarom niet meer gebruikt te worden.
Toepassing en restricties
Het opvragen van de conformiteit kan uitgevoerd worden zonder access token
Capability Set
Een Capability Set combineert individuele mogelijkheden om een specifieke use-case mogelijk te maken. Een SMART on FHIR-server MOET een of meer Capability Sets ondersteunen.
Tenzij anders vermeld, is elke vermelde capaciteit vereist om te voldoen aan een capaciteiten set. Elke individuele SMART-server zal een gedetailleerde lijst van zijn mogelijkheden publiceren; uit deze lijst kan een Client bepalen welke van deze Capability Sets worden ondersteund.
Capabilities
Om interoperabiliteit te bevorderen, zijn de volgende SMART on FHIR-mogelijkheden gedefinieerd. Een bepaalde set van deze mogelijkheden wordt gecombineerd ter ondersteuning van een specifiek gebruik, een Capability Set.
...
client applicaties KUNNEN een Accept-header weglaten
servers KUNNEN alle door de client geleverde Kopteksten accepteren
servers ZULLEN reageren met application/json
De configuratie vraag.
Opvragen van SMART major versie 2 configuratie per domein (zorgafnemer). Basis URL "fhir.koppeltaal.nl/domeinzorgafnemer/v2"
GET domeinzorgafnemer/v2/.well-known/smart-configuration HTTP/1.1 Host: fhir.koppeltaal.nl
Response op configuratie aanvraag.
Een JSON-document moet worden geretourneerd met het type application/json mime.
...
LET OP: Elk domein krijgt zijn eigen endpoints.
Eisen
CNF - Eisen (en aanbevelingen) voor de conformiteit
Voorbeelden
Code Block | ||||
---|---|---|---|---|
| ||||
HTTP/1.1 200 OK Content-Type: application/json { "issuer": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2", "jwks_uri": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/.well-known/jwks.json", "authorization_endpoint": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/auth/authorize", "token_endpoint": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/auth/token", "token_endpoint_auth_methods_supported": [ "client_secret_basic", "private_key_jwt" ], "grant_types_supported": [ "authorization_code", "client_credentials" ], "registration_endpoint": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/auth/register", "scopes_supported": ["openid", "profile", "launch", "launch/patient", "patient/*.rs", "user/*.rs", "offline_access"], "response_types_supported": ["code"], "management_endpoint": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/user/manage", "introspection_endpoint": "https://fhir.koppeltaal.nl/domeinzorgafnemer/v2/user/introspect", "code_challenge_methods_supported": ["S256"], "capabilities": [ "launch-ehr", "permission-patient", "permission-v2", "client-public", "client-confidential-asymmetric", "context-ehr-patient", "sso-openid-connect" ] } |
Links naar gerelateerde onderwerpen
OpenID configuratie: Ldapwiki: Openid-configuration
...