aboutsummaryrefslogtreecommitdiff
path: root/gn_auth/auth/authorisation
AgeCommit message (Expand)Author
2024-03-04Add an extra endpoint for metadata authorisation....* gn_auth/auth/authorisation/data/views.py: (metadata_resources): New end-point for authorising metadata data. * gn_auth/auth/authorisation/resources/models.py: Import sqlite3.Row. (__metadata_resource_data__): New function. (__assign_resource_owner_role__): Add __metadata_resource_data__ to the "resource_data_function" map. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2024-03-04Fix minor typo....* gn_auth/auth/authorisation/data/views.py (authorisation): Fix typo. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2024-03-04Remove redundant error code for InvalidData....Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2024-02-29Allow POST for JSON requests.Frederick Muriuki Muriithi
2024-02-28Handle the "NotFoundError" exception at the route level...Handle the "NotFoundError" exception at the route level, since if we do not, the application level handler takes over and simply returns a JSON response with the details of the failure. Frederick Muriuki Muriithi
2023-12-18Provide the correct Redis key...Previously, when the user would request to either import or delete the collections they had created before logging in, the system would try deleting the collections from the wrong key, leading to the collections still showing up. This commit fixes that by providing the code with the correct Redis key to act upon. Frederick Muriuki Muriithi
2023-11-23Scripts: Update script for newer db schema...The schema changed a while back, and the script that is used to make all existing data public needs to be updated for the new schema. This commit does exactly that. Frederick Muriuki Muriithi
2023-11-22Move system admin creation...Make the system admin creation code part of the core system, and simply call it from the script(s). This will help with maintenance, since the changes are done in a single place only. Frederick Muriuki Muriithi
2023-11-13Bug: Fix typo in queryFrederick Muriuki Muriithi
2023-11-13Update check for adminsFrederick Muriuki Muriithi
2023-11-02mypy: Fix typing errors.Frederick Muriuki Muriithi
2023-11-02pylint: Fix linting errors.Frederick Muriuki Muriithi
2023-10-12Bugs: Fix query and provide default function for inbredset-groupFrederick Muriuki Muriithi
2023-10-10Get authorisation by resource_ids...Add an endpoint to help users get the resources authorisation by the resource ids. Frederick Muriuki Muriithi
2023-10-10Temporarily return no data for resources of types system and group.Frederick Muriuki Muriithi
2023-10-09Fetch InbredSet group resource ID by SpeciesId and InbredSetId...Get the resource used to control access to the InbredSet group by that group's SpeciesId and InbredSetId. Frederick Muriuki Muriithi
2023-09-27typing: fix and ignore typing issues.Frederick Muriuki Muriithi
2023-09-27linting: Remove unused import, handle unused variableFrederick Muriuki Muriithi
2023-09-27Bug: Fix issue with viewing resources of type "group".Frederick Muriuki Muriithi
2023-09-26Update query...Replace `group_user_roles_on_resources` table with `user_roles` for the query that checks whether the user has appropriate permissions to act on a specific resource. Frederick Muriuki Muriithi
2023-09-26Handle temporary edge cases...Fetching resource data: system and group categories of resources do not have associated genetic data. This commit adds some code to temporarily handle that case as an edge case before I can devote more time to fixing the issue in a much better way. Frederick Muriuki Muriithi
2023-09-26Add `public-view` role. Assign it to users....Add a new `public-view` role to be assigned to all users on all resources that are defined as publicly viewable. Update code to make assign `public-view` role to a newly registered user for all publicly viewable roles. Update the code to assign/revoke the `public-view` role to/from users whenever the resource is toggled to and from being publicly viewable. Ensure that `public-view` is not revoked from system-administrators. Ensure that `public-view` is not revoked from the group administrators of the group that owns the resource. Frederick Muriuki Muriithi
2023-09-26Update fetching a single roleFrederick Muriuki Muriithi
2023-09-26Initialise package to handle resources of type "system".Frederick Muriuki Muriithi
2023-09-26Update /roles endpoint: rework code for new `user_roles` function...The way the `gn_auth.auth.authorisation.roles.models.user_roles` function works has changed: this commit updates the code to take that into consideration and fix any errors. Frederick Muriuki Muriithi
2023-09-26Add System resource, and group resource(s) to list of user resources...* The system resource is public, and should be present for all users. * Each user that is a member of a group, should have their group show up in their list of resources. * Fix the SQL join: add an `ON ...` clause. Frederick Muriuki Muriithi
2023-09-26Update `user_roles`: Return roles for user by resource.Frederick Muriuki Muriithi
2023-09-26Move `groups` package under `resources` package...With user groups being resources that users can act on (with the recent changes), this commit moves the `groups` module to under the `resources` module. It also renames the `*_resources.py` modules by dropping the `_resources` part since the code is under the `resources` module anyway. Frederick Muriuki Muriithi
2023-09-26Remove group from resource objects...With the new schema, not all Resource objects are "owned" by a group. Those that are, are linked together through a different db table (`resource_ownership`). This commit removes the `Group` object from `Resource` objects and updates the `resource_ownership` where relevant. Frederick Muriuki Muriithi
2023-09-26Raise exception if no group for `resource_group`...Rather than using pymonad's Maybe monad and dealing with the complexity it introduces, raise an exception if there is no group found for the given resource. Frederick Muriuki Muriithi
2023-09-26Add `resource_group` function to retrieve the owning group...Some resources are "owned" by specific user groups. This commit adds a way to retrieve those "owners" where relevant. Frederick Muriuki Muriithi
2023-09-26Extract resource-type-specific code into separate modules...For easier maintenance, extract the code that relates to specific resource types/categories into separate modules, each dealing with a single resource type/category. Frederick Muriuki Muriithi
2023-09-26Extract basic resource types to a separate module.Frederick Muriuki Muriithi
2023-08-08Use relative imports to break circular import errorsFrederick Muriuki Muriithi
2023-08-08Fix issues caught by linter...* Add a .pylintrc to silence annoying messages * Fix imports * Add missing `parse_db_url` function * Add a new `gn_auth.auth.db.redis` module Frederick Muriuki Muriithi
2023-08-07Add missing modules...Copy over missing modules and functions to completely disconnect gn-auth from GN3. Frederick Muriuki Muriithi
2023-08-07Change imports to new unified db module.Frederick Muriuki Muriithi
2023-08-07Update module name/path...Change from gn3 to gn_auth Frederick Muriuki Muriithi
2023-08-04Initialise the application and update some module importsFrederick Muriuki Muriithi
2023-08-04Copy over files from GN3 repository.Frederick Muriuki Muriithi