3 | | * Authentication |
4 | | * (local) database |
5 | | * OpenId |
6 | | * LDAP |
7 | | * IP based |
8 | | * ... |
9 | | * Authorization |
10 | | * Permissions |
11 | | * read |
12 | | * write (create, update, delete) |
13 | | * execute |
14 | | * Resources |
15 | | * tables |
16 | | * rows |
17 | | * columns |
18 | | * files |
19 | | * ... |
| 7 | === Authorization === |
| 8 | * Resources are tables, rows, columns, files (for pipelines?) |
| 9 | * Subjects are users, groups, public users (unauthenticated) and exactly one administrator |
| 10 | * Permissions include read, write, execute (for pipelines?) and ownership |
| 11 | * Resources must have exactly one user with ownership rights |
| 12 | * Permissions are provided for resources x subjects |
| 13 | * The administrator has all permissions excluding ownership on all resources |
| 14 | * Authenticated users can request permissions for resources. Requests are sent to the user with ownership rights of the resource. |
| 15 | * Groups can be created by users who have write rights on the MolgenisGroup table. The administrator is the owner of the MolgenisGroup table and can delegate rights to other users. |
| 16 | * In case of an UpdateDatabase all permissions are reset (except for administrator) |
| 17 | * The public user has reading permissions on all resources |
| 18 | * Administrator can pass on permissions from parent tables to child tables with a toggle button |
36 | | * Users need to be able to login |
37 | | * All registered users have edit permissions to create new investigations |
38 | | * All existing investigations can only be listed (names) but no other values |
39 | | * All investigations are owned by one or more persons |
40 | | * If not yet owned, users can request to become manager of an investigation. |
41 | | * Otherwise users can request read access to the investigation |
42 | | * Users can create groups of themselves (except for lifelines) |
43 | | * Users can share an investigation and all its components to [public, groups, whitelists of users) for viewing |
44 | | * The sharing rules can be read or write (so that means they can transfer management of an investigation) |
45 | | * All InvestigationElement inherit the sharing rules set on an investigation (hence, if the investigation is public so are all its elements) |
46 | | * Individual investigation elements, and the dataelements that refer to them can have different permissions (lifelines) |
| 41 | |
| 42 | * Users need to be able to login |
| 43 | * All registered users have edit permissions to create new investigations |
| 44 | * All existing investigations can only be listed (names) but no other values |
| 45 | * All investigations are owned by one or more persons |
| 46 | * If not yet owned, users can request to become manager of an investigation. |
| 47 | * Otherwise users can request read access to the investigation |
| 48 | * Users can create groups of themselves (except for lifelines) |
| 49 | * Users can share an investigation and all its components to [public, groups, whitelists of users) for viewing |
| 50 | * The sharing rules can be read or write (so that means they can transfer management of an investigation) |
| 51 | * All InvestigationElement inherit the sharing rules set on an investigation (hence, if the investigation is public so are all its elements) |
| 52 | * Individual investigation elements, and the dataelements that refer to them can have different permissions (lifelines) |
66 | | * Users need to be able to register (as users) |
67 | | * Confirmation email to the registrar |
68 | | * Users need to be able to register/confirm their email |
69 | | * Users need to be able to login |
70 | | * When loged in users are able to view public datasets and their own datasets |
| 70 | * Users need to be able to register (as users) |
| 71 | * Confirmation email to the registrar |
| 72 | * Users need to be able to register/confirm their email |
| 73 | * Users need to be able to login |
| 74 | * When loged in users are able to view public datasets and their own datasets |
74 | | * Administrators need to be able to: Authenticate users, Ban users, Delete unused accounts |
75 | | * Administrators are not able to register, view all,execute all |
76 | | * Users cannot be promoted to admin, admins cannot be demoted to users |
77 | | * Admins donnot register, but are 'hardcoded' into the application |
78 | | |
79 | | |
80 | | |
81 | | |
| 78 | * Administrators need to be able to: Authenticate users, Ban users, Delete unused accounts |
| 79 | * Administrators are not able to register, view all,execute all |
| 80 | * Users cannot be promoted to admin, admins cannot be demoted to users |
| 81 | * Admins donnot register, but are 'hardcoded' into the application |