Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-03-08 | auth: users: Use the same basic functions for password hashing | Frederick Muriuki Muriithi | |
To avoid repeating the same thing in multiple places, leading to errors and breakages, reuse the same basic functions for password hashing. | |||
2023-03-08 | Replace Bcrypt with Argon2 for better security. | Frederick Muriuki Muriithi | |
Bcrypt is now somewhat vulnerable to offline cracking, so we move our password hashing over to Argon2. | |||
2023-03-07 | auth: group_roles: Enable addition/deletion of privileges | Frederick Muriuki Muriithi | |
2023-03-07 | auth: resources: unassign roles on resource from a user. | Frederick Muriuki Muriithi | |
2023-03-07 | auth: user_by_id: Return a user or raise an exception | Frederick Muriuki Muriithi | |
Fetching the user by id should return the user, or raise an exception. We get rid of the Maybe monad here since it is leading to some weird code flows - probably the wrong monad to use here. | |||
2023-03-06 | auth: resources: Enable assigning a user roles on resources | Frederick Muriuki Muriithi | |
2023-03-06 | auth: resources: Link role's group to the resource's group | Frederick Muriuki Muriithi | |
2023-03-06 | auth: resources: Get all users with access to a particular resource. | Frederick Muriuki Muriithi | |
2023-03-03 | auth: Enable viewing group role details. | Frederick Muriuki Muriithi | |
2023-03-03 | auth: group roles: enable creation and listing of group roles. | Frederick Muriuki Muriithi | |
2023-03-02 | auth: user registration: Rework error checking. Add email validation | Frederick Muriuki Muriithi | |
2023-03-01 | Fetch sampledata | Munyoki Kilyungi | |
* gn3/api/sampledata.py (get_sampledata): New end-point. * gn3/app.py: Register above end-point. * gn3/settings.py: Add new conf variable for LMDB. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-03-01 | Open lmdb path in readonly mode | Munyoki Kilyungi | |
* gn3/db/matrix.py (get_total_versions, get_nth_matrix, get_current_matrix): Open lmdb in readonly mode. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-03-01 | Create API endpoint for fetching trait metadata | Munyoki Kilyungi | |
* gn3/api/metadata.py (dataset_metadata): New function and endpoint. (jsonify_dataset_metadata): Rename to dataset_metadata. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-03-01 | Fetch trait metadata from RDF | Munyoki Kilyungi | |
* gn3/db/rdf.py (get_dataset_metadata): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-02-28 | auth: Unlink data from resourcesdata-access-levels-endpoint | Frederick Muriuki Muriithi | |
Enable the data editor to unlink data from a particular resource. | |||
2023-02-28 | auth: Unlink data from resources | Frederick Muriuki Muriithi | |
Enable the data editor to unlink data from a particular resource. | |||
2023-02-27 | auth: Endpoint to get access levels for data | Frederick Muriuki Muriithi | |
When the endpoint is accessed with a list of traits, it should/will respond with the access privileges for each of the traits attached for the active user. | |||
2023-02-24 | auth: resources: Fix query for data not linked to resources | Frederick Muriuki Muriithi | |
2023-02-24 | auth: resources: Fix queries loading resources data. | Frederick Muriuki Muriithi | |
2023-02-24 | auth: resources: Link data to resources. | Frederick Muriuki Muriithi | |
2023-02-23 | auth: Link data in MySQL to the groups (in SQLite) | Frederick Muriuki Muriithi | |
In order for the group leaders (and other resource creators) to be able to link data to the resources, the data needs to be first linked to the relevant group. This commit enables the system admin to link the data in MySQL to the groups. | |||
2023-02-22 | auth: List data not linked to any group. | Frederick Muriuki Muriithi | |
2023-02-21 | auth: db: DEBUG: Output quer(y|ies) that were run. | Frederick Muriuki Muriithi | |
2023-02-21 | auth: resources: Attach resource data and list unlinked data. | Frederick Muriuki Muriithi | |
Load the data that is attached to a particular resource together with the resource. List any unlinked data: useful when linking data to resources. | |||
2023-02-10 | Return empty tuple rather than Nothing | Frederick Muriuki Muriithi | |
When user has no roles assigned, return an empty tuple rather than pymonad.maybe.Nothing to ease maintenance. | |||
2023-02-09 | auth: Reject request to join a group. | Frederick Muriuki Muriithi | |
* gn3/auth/authorisation/groups/models.py: Modify function to either accept or reject join requests. * gn3/auth/authorisation/groups/views.py: Provide endpoint to reject join requests. * migrations/auth/20230207_01_r0bkZ-create-group-join-requests-table.py: Prevent user from applying to join the same group more than once. | |||
2023-02-09 | auth: users: Check whether a user has an active join request. | Frederick Muriuki Muriithi | |
2023-02-08 | auth: groups: handle join requests. | Frederick Muriuki Muriithi | |
2023-02-07 | auth: groups: Enable users to request to join group. | Frederick Muriuki Muriithi | |
2023-02-06 | Get the N-th matrix given N, an index value | Munyoki Kilyungi | |
* gn3/db/matrix.py (get_nth_matrix): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-02-06 | Get total number of versions that a database has | Munyoki Kilyungi | |
* gn3/db/matrix.py (get_total_versions): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-02-06 | Add method to fetch the current matrix | Munyoki Kilyungi | |
* gn3/db/matrix.py: New file. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> | |||
2023-02-06 | auth: resource: Enable viewing the details of a resource. | Frederick Muriuki Muriithi | |
2023-02-03 | auth: commit missing module. | Frederick Muriuki Muriithi | |
2023-02-03 | oauth: enable resource creation | Frederick Muriuki Muriithi | |
2023-02-03 | auth: tests: mock token acquisition. Fix minor bugs. | Frederick Muriuki Muriithi | |
2023-02-02 | auth: Improve authorisation | Frederick Muriuki Muriithi | |
Retrieve the token, and user in the authorisation decorator to enable checking of privileges. | |||
2023-02-02 | auth: Reorganise modules/packages for easier dev and maintenance | Frederick Muriuki Muriithi | |
Split the views/routes into separate modules each dealing with a narrower scope of the application to aid in maintenance, and help with making the development easier. | |||
2023-01-31 | auth: Retrieve group members. | Frederick Muriuki Muriithi | |
2023-01-31 | auth: Remove the @authenticated_p decorator | Frederick Muriuki Muriithi | |
The @authenticated_p decorator (and function), is an artifact of the original development ideas and should be removed from use. | |||
2023-01-31 | auth: Set the token scope as a string, not a list | Frederick Muriuki Muriithi | |
Setting the scope as a list of strings was leading to errors when attempting to logout. This commit leaves the scope as a string to avoid the errors. | |||
2023-01-30 | auth: Do not treat not finding a group as an error | Frederick Muriuki Muriithi | |
Stop treating not finding a group for a user as an error, since that is an actual expected state in the system at some point. Rather, restore the use of Maybe rather than using Either. We can raise the NotFoundError at the API level rather than at database retrival level. | |||
2023-01-30 | auth: API: retrieve resources | Frederick Muriuki Muriithi | |
2023-01-30 | auth: groups: cleanup code | Frederick Muriuki Muriithi | |
Refactor to use the `.either` method call in a cleaner way. Rework the imports. | |||
2023-01-30 | auth: API: Retrieve a user's group | Frederick Muriuki Muriithi | |
Add endpoint to retrieve the group in which the user is a member. | |||
2023-01-28 | auth: Enable retrieval of a role by id. | Frederick Muriuki Muriithi | |
2023-01-28 | auth: rework dictify | Frederick Muriuki Muriithi | |
Define a Protocol type to use with the `dictify` function and implement the `dictify` methods for the various classes. | |||
2023-01-28 | auth: Store error_code in Exception for flexibility | Frederick Muriuki Muriithi | |
To allow for different error codes for the various exceptions, store the error_code in the exception objects and retrieve it from there when generating the response. | |||
2023-01-25 | Some comments | Pjotr Prins | |