Changes between Initial Version and Version 1 of Modules/AuthModule/WishList


Ignore:
Timestamp:
2012-01-04T16:03:28+01:00 (13 years ago)
Author:
Morris Swertz
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Modules/AuthModule/WishList

    v1 v1  
     1= AuthModule 2.0 wishlist =
     2[[TOC()]]
     3Driven by WormQTL and other community project we would like the following:
     4
     5== Users, groups and roles ==
     6
     7A user is an natural person that can log in to the system. He/she can have a username and password.
     8A group is a named role that cannot log in. Both users and other groups can be 'member' of a group.
     9Both user and group are 'role'.
     10
     11Special roles:
     12- anonymous (user): users that are not logged in
     13- admin (user): users that bypass the security system
     14- all users (group): users that are registered in this system
     15
     16
     17
     18
     19== Record permission roles ==
     20
     21A record is an instance of an entity. Record permissions define what actions a role can perform on a record.
     22We distinguish the following types of permissions per record:
     23
     24|| action || view || edit || own ||
     25|| view record || X || X || X ||
     26|| edit record || - || X || X ||
     27|| give other roles view or edit permissions || - || - || X ||
     28|| delete record || - || - || X ||
     29|| transfer ownership to other user || - || - || X ||
     30
     31Only when having table level write permission you can create new records.
     32The creator is automatically the owner.         There can be only one owner per record.
     33
     34== User interactions ==
     35
     36Default only the owner is set and the table level permissions are enforced (e.g. the admin may have specified that 'anonymous' can read and 'biologists' can edit').
     37
     38Individual users may choose to override this by giving row level permissions. These come in the form 'PermissionRule' {role,permission}, for example "admin,read".
     39Multiple PermissionRule can be bundled into on PermissionSet, for example "admin,write; anonymous, view".
     40These can then be link
     41
     42A 'PermissionSet' is a bundle of permission rules.
     43
     44
     45
     46
     47
     48In the 'list' view you can select record and then push the 'share' button to set sharing permissions (existing permissions are overwritten).
     49You can also reuse a previous 'permission set'.
     50
     51|| user story || how it works ||
     52|| Give everybody permission to my data || Give permission to 'anonymous' ||
     53|| Give all registered users permission to my data || Give permission to 'all users' ||
     54|| Give a particular user permission to my data || Give permission to '<username>' ||
     55
     56
     57* In user interface it should be very clear what is share so I can change that easily
     58*
     59* Give view/edit permissions to all users -> give view to 'anonymous'.
     60* I can specify for each group that I am member of how I want to share