Skip to content

Conversation

hhund
Copy link
Member

@hhund hhund commented Oct 4, 2025

  • FHIR server roles (CREATE, READ, UPDATE, DELETE, SEARCH, HISTORY, PERMANENT_DELETE, WEBSOCKET) can now be specified for specific FHIR resources. For example: - CREATE: [Organization, OrganizationAffiliation, Endpoint] other examples see test setup docker-compose files.
  • Roles SEARCH, HISTORY and WEBSOCKET require users to have the READ role as well, if the User has no READ role for a specific resource, SEARCH, HISTORY and WEBSOCKET operations will filter out the resource type.
  • Removed identity parameter from ReferenceResolver methods. Implementation no longer uses identity filters when searching for resources in DB, user may not have role to search or read referenced resource but reference should be checked anyways. For example: Update role for QuestionnaireResponse but no search or read for Organization.
  • Resource validator workaround for QuestionnaireResponse display text values.
  • Some code cleanup.

closes #365

* FHIR server roles (CREATE, READ, UPDATE, DELETE, SEARCH, HISTORY,
PERMANENT_DELETE, WEBSOCKET) can now be specified for specific FHIR
resources. For example `- CREATE: [Organization,
OrganizationAffiliation, Endpoint]` other examples see test setup
docker-compose files.
* Roles SEARCH, HISTORY and WEBSOCKET require users to have the READ
role as well, if the User has no READ role for a specific resource,
SEARCH, HISTORY and WEBSOCKET operations will filter out the resource
type.
* Removed identity parameter from ReferenceResolver methods.
Implementation no longer uses identity filters when searching for
resources in DB, user may not have role to search or read referenced
resource but reference should be checked anyways. For example: Update
role for QuestionnaireResponse but no search or read for Organization.
* Some code cleanup.
@hhund hhund added this to the 2.0.0 milestone Oct 4, 2025
@hhund hhund requested review from schwzr and wetret October 4, 2025 16:58
@hhund hhund self-assigned this Oct 4, 2025
@hhund hhund linked an issue Oct 4, 2025 that may be closed by this pull request
@wetret
Copy link
Member

wetret commented Oct 5, 2025

Can we extend this to include profiles for different resources? This would allow access to be granted to specific users only for selected processes.

An extension for specific FHIRPath expressions that evaluate certain values within those paths could even more improve the options for user access management. For example identifiers that start with a certain prefix.

@hhund
Copy link
Member Author

hhund commented Oct 6, 2025

@wetret Although possible, I would suggest to first improve the way Task and QuestionnaireResponse resources are associated with users and user roles, see #367

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Extended FHIR Server User Role Config - Role Per Resource
2 participants