aboutsummaryrefslogtreecommitdiff
path: root/gn3/auth/authorisation
AgeCommit message (Expand)Author
2023-05-12auth: Provide separate endpoint for anonymous collections.Frederick Muriuki Muriithi
2023-05-11auth: Fix bug with migration of user collections...The code, as written previously had a subtle bug - if the user created a new collection before they had tried accessing their list of collections, the older code would not have migrated the older collections. This commit fixes that by enabling the migration of older collections, whether or not the user has created a collection with their new accounts. Frederick Muriuki Muriithi
2023-05-10auth: Add the /oauth2/user/collections/list endpoint...Add an endpoint to list a user's collections. This only works for logged in users. Frederick Muriuki Muriithi
2023-04-27auth: Retrieve `system:*` privileges from resource roles...With the assignment of `system:*` privileges to roles, we need to check for their existence when doing authorisation. This commit provides a hack for that, seeing as user groups (and the system itself) are not treated as resources, and therefore the way to fetch the privileges is not entirely consistent. Frederick Muriuki Muriithi
2023-04-27auth: List also the non-resource privileges the user has...While creating new group roles, enable the listing of non-resource privileges, e.g. `system:group:*` and `system:user:*` that the user has to allow for them to be used in role creation. Frederick Muriuki Muriithi
2023-04-27auth: Add authorisation checks for role editting.Frederick Muriuki Muriithi
2023-04-27oauth2: Provide missing `user_editable` argument.Frederick Muriuki Muriithi
2023-04-25auth: bug: Provide missing `user_editable` argument.Frederick Muriuki Muriithi
2023-04-25auth: provide `user_editable` flag in dictified outputFrederick Muriuki Muriithi
2023-04-25auth: Roles: Check for editability...Some roles should not be user-editable, and as such, we need to check before allowing any edits on such roles. This commit makes that possible. Frederick Muriuki Muriithi
2023-04-24auth: Return the actual privileges for the user...Previously, the `oauth2/data/authorisation` endpoint was returning hard-coded values for the privileges assigned to the user for each resource. In this change, we rework to return the actual privileges for the user. Frederick Muriuki Muriithi
2023-04-21auth: Attach linked data to specific resources.Frederick Muriuki Muriithi
2023-04-21auth: Fetch user group phenotypes not attached to a resource.Frederick Muriuki Muriithi
2023-04-19oauth2: Link the phenotype traits to user groups.Frederick Muriuki Muriithi
2023-04-19Fix minor linting and typing issuesFrederick Muriuki Muriithi
2023-04-19auth: Setup selected traits correctly...Fix bugs with setting up of the selected traits for use while filtering the search results. Frederick Muriuki Muriithi
2023-04-19auth: phenotypes - provide default empty list for selected traits.Frederick Muriuki Muriithi
2023-04-18auth: Pass `--per-page` and `--selected` options.Frederick Muriuki Muriithi
2023-04-17Hook up code to use external search script for phenotypesFrederick Muriuki Muriithi
2023-04-17auth: Delete code that is no longer usedFrederick Muriuki Muriithi
2023-04-15Decouple `gn3.db_utils` from `flask.current_app`....Decouple the `gn3.db_utils` module from the global `flask.current_app` object, ensuring that the database uri value is passed in as a required argument to the `gn3.db_utils.database_connection` function. Frederick Muriuki Muriithi
2023-04-14auth: Add external script to search for phenotypes...We need a search through the available phenotype traits in the database when linking the traits to user groups. Unfortunately, the Xapian Search indexes do not (and should not) include the internal identifiers we use to disambiguate the traits. On the other hand, we do not want to present the user with traits that have already been linked to any user group within the search results. The script in this commit, together with the modified queries for fetching the phenotype data form a "hack" of sorts to wrap around the way the search works while ensuring we do not present the user with "non-actionable" (linked) traits in the search results. Frederick Muriuki Muriithi
2023-04-12auth: Enable listing of unlinked genotype/mRNA group data.Frederick Muriuki Muriithi
2023-04-10Add search and link for mRNA Assay datasets.Frederick Muriuki Muriithi
2023-04-10Update expected request key.Frederick Muriuki Muriithi
2023-04-10Enable search, filtering out selected, but not linked data...When a user selects some datasets and does a new search, we filter out the selected datasets too, even though they are yet to be linked. Frederick Muriuki Muriithi
2023-04-08auth: Link genotype datasets to groups.Frederick Muriuki Muriithi
2023-04-04auth: Search for linking genotype datasets.Frederick Muriuki Muriithi
2023-03-23auth: list the species in the database.Frederick Muriuki Muriithi
2023-03-22auth: data linking: build functions to fetch unlinked phenotypes...This is an initial attempt: it does not allow a search to be carried out across the data available in the database. I will need to rework this, probably start from the UI and work backward. Frederick Muriuki Muriithi
2023-03-22auth: Enable linking multiple datasets to the group at once.Frederick Muriuki Muriithi
2023-03-20auth: data: Enable offset in queries...Enable the 'OFFSET' clause in the queries to allow for progressive fetching of data from the database using the 'Previous' and 'Next' buttons. Frederick Muriuki Muriithi
2023-03-20auth: data: List Phenotypes at the trait level...For Phenotypes, list the Phenotype traits rather than the dataset(s). Frederick Muriuki Muriithi
2023-03-18oauth2: resources: toggle whether a resource is public or notFrederick Muriuki Muriithi
2023-03-18auth: resources: Disallow duplicate resource names.Frederick Muriuki Muriithi
2023-03-15auth: Data Migrations: Rework migration trigger...Rework the migration trigger endpoint such that it does a bulk import of all the resources in the redis store. It also expects that the user that triggers the migration have the appropriate privileges. Frederick Muriuki Muriithi
2023-03-14auth: Fix some linting and typing issues.Frederick Muriuki Muriithi
2023-03-13oauth2: data: Temporarily escalate privileges to enable migration...The functions that fetch the unlinked data have checks to ensure they are called by users with the appropriate privileges. This commit enables a temporary escalation of privileges to enable fetching the data, so as to allow successful data migration. Frederick Muriuki Muriithi
2023-03-13auth: separate user detail migration from data migration...Due to the fact that the data migration requires higher privileges than the user details, separate the user details migration endpoint from the data migrations endpoint. Frederick Muriuki Muriithi
2023-03-10auth: data-migration: Fix minor bugsFrederick Muriuki Muriithi
2023-03-09auth: redis data: migrate data in redis...Implement the code to migrate the data from redis to SQLite. Frederick Muriuki Muriithi
2023-03-09auth: data migration: Data migration outline...Provide an outline of the data migration steps to be taken from some results of the experiments with the data in redis. Frederick Muriuki Muriithi
2023-03-09auth: introspection: Protect introspection endpoint...The introspection endpoint could contain privileged information, thus requires that the endpoint be protected. This commit ensures that a user has authenticated to the system and that the client they are using be one of the allowed clients. Frederick Muriuki Muriithi
2023-03-07auth: group_roles: Enable addition/deletion of privilegesFrederick Muriuki Muriithi
2023-03-07auth: resources: unassign roles on resource from a user.Frederick Muriuki Muriithi
2023-03-07auth: user_by_id: Return a user or raise an exception...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. Frederick Muriuki Muriithi
2023-03-06auth: resources: Enable assigning a user roles on resourcesFrederick Muriuki Muriithi
2023-03-06auth: resources: Link role's group to the resource's groupFrederick Muriuki Muriithi
2023-03-06auth: resources: Get all users with access to a particular resource.Frederick Muriuki Muriithi
2023-03-03auth: Enable viewing group role details.Frederick Muriuki Muriithi