Minimum bar: support patient/
scopes (e.g., patient/ExplanationOfBenefit.read
),
and authorize the app for each patient record. So here at authz time,
e.g., scope=launch/patient patient/ExplanationOfBenefit.read patient/Coverage.read ...
e.g., scope=launch/patient patient/*.read
Beyond the minumum, a server can support user-level scopes ("do you want to share
all the records you have access to with the following app"...)
e.g., scope=user/ExplanationOfBenefit.read user/Coverage.read ...
Spec / Standards / Regulation level: FHIR Resource Types.
(e.g., Patient
, Coverage
, ExplanationOfBenefit
).
Any specific authorization server: Can provide finer-grained controls; this doesn't
need to be standardized, but e.g., if the app asks for patient/ExplanationOfBenefit.read
an authorization server might present the user with a list of choices.
Plan: support patient standalone launch
patient/*.read
as the "only supported scope" in v1 (may add type-specific support later)launch/patient
as a requiredopenid fhirUser
to allow the app to discover info about the authenticated user- Not supporting EHR launch (or context for EHR launch)
- Not supporting Encounters