Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add row-level security to individual and group #1

Closed
weilu opened this issue Sep 6, 2024 · 1 comment · Fixed by openimis/openimis-be-location_py#133 or openimis/openimis-be-core_py#325
Assignees

Comments

@weilu
Copy link
Owner

weilu commented Sep 6, 2024

The individuals and group beneficiaries will need to have location-based row-level security functionality added, similar to how it is implemented in the insuree module. This will allow a district officer to only view individuals, groups and program beneficiaries of their assigned district(s).

This means the CRUD operations for a district user can only apply to individuals/groups/beneficiaries of the given location(s), same goes for enrollment.

For batch import of individuals and groups via csv, recognize and import the location column. Fail the records with unrecognized location while allowing the rest of the records to be imported. Include the failed records in error messages or allow downloading of the failed records. Check how beneficiary upload works.

With row security, when a user doesn't see all beneficiaries in a program they should be shown the total number when appropriate, e.g. total enrolled active etc.

@weilu
Copy link
Owner Author

weilu commented Sep 6, 2024

This story is very big in scope considering the changes required. I'm going to split out benefit plan and beneficiary into a separate ticket

@weilu weilu changed the title Add row security to individual, group, and benefit plan beneficiaries Add row security to individual and group Sep 6, 2024
@weilu weilu changed the title Add row security to individual and group Add row-level security to individual and group Sep 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment