feature request #3709
open[E+M][Editor] sufficient rights management for E+M workflow
80%
Description
Implement rights management and roles etc. which is needed for the E+M workflow:
Groups and Authorities¶
In ticket #4082 (implement default permission groups) the default PermissionGroups habe been implemented for Eumed ( and hopefully also for other databases). These default permission groups have to be combined and others have to be created manually in order to create the effective user groups for euro + med, which are:
das Editorial Board, das Lese- und Schreibrechte auf sämtlichen Daten hat (ROLE_PUBLISH + group ProjectManager + group Editor + group Euro+Med Plantbase")
die einzelnen Autoren, die Lese-und Schreibrechte für ihre jeweilige taxonomische Gruppe (Familie, Gattung etc. mit allen darin enthaltenen Taxa) haben, aber zum Beispiel keine neuen bibliographischen Referenzen (etwa für geographische Angaben) editiern, hinzufügen oder löschen dürfen - nomenklatorische Referenzen dürfen sie hinzufügen, aber bestehende Referenzen nicht ändern oder löschen.
Im CDM sollen Autoren aber grundsätzlich Referenzen anlegen dürfen. Sie müssen dann eben prüfen, ob die Referenz schon existiert! (group Editor + group __"))
- Eine dritte Ebene betrifft die Eingabe von Common Names - diese Nutzer dürfen an der Taxonomie und den Namen nichts ändern, sondern lediglich Informationen (factual data) mit entsprechenden bibl. Referenzen hinzufügen.
Additional Groups:
Group Euro+Med Plantbase:
TAXONNODE.[CREATE,READ,UPDATE,DELETE]
Group **:
TAXONNODE.[CREATE,READ,UPDATE,DELETE]{$uuid}
see also milestone Taxeditor-security
Requirements¶
protect cdm types with CdmAuthorities:
- Taxon - OK
- TaxonNode - OK
- Terms - TODO: Group Editor = TERMBASE[CREATE,READ]; new Group Project_Admin = ROLE_PROJECT_MANAGER, TERMBASE[CREATE,READ,UPDATE;DELETE]
- References - TODO Group Editor = REFERENCE[CREATE,READ]; new Group Project_Admin = ROLE_PROJECT_MANAGER, REFERENCE[CREATE,READ,UPDATE;DELETE]
- Names - TODO Group Editor = TAXONNAMEBASE[CREATE,READ]; new Group Project_Admin = ROLE_PROJECT_MANAGER, TAXONNAMEBASE[CREATE,READ,UPDATE;DELETE]
Restrict permission to edit, create, remove taxa can be restricted to one or multiple taxonomic groups - seems to be working -but the editor displays aggressive and technical error dialogues in case a user dares to execute a prohibited operation-. Three actions need be taken to improve this situation:
#4056 (taxeditor responds with nicer dialogue in case a user executes a prohibited operation)
#3781 (Protect new and delete TaxonNode commands [DISCUSS])
#4055 (operations offered by editor adapt to the users granted authorities) - UNDER REVIEW
#4111 (behaviour of TaxonEditor for users with limited grants [DISCUSS])
a bug: #4115 ('editor' users cannot create new references via the reference select list)
Publish flag: A person allowed to edit a taxonomic group should not at the same time be allowed to publish this taxon. Therefore a special PUBLISH role is needed, which can be global or bound to a classification:
- publish flag in cdmlib: #1780 (Publish bit instead of marker)
- #4101 (publish bit must not set by default for new taxa)
- permission management: #3980 (Implement PUBLISH role into cdmlib security)
- editor: #3739 (Allow editing of publish bit for Taxon and SpecimenOrObservationBase), #3951 (Allow editing of publish bit for SpecimenOrObservationBase), #4011 (disallow changing publish flag for users with unsuffcient rights)
- #4132 (automatic setting of the publish flag after editing an entity ([DISCUSS])
- #4133 (publish flag inheritance for new taxa [DISCUSS])
Users, Groups and Granted authorities can be more or less easily managed:
- #2282 (Implement User and Group Management facilities in the Taxonomic Editor)
- #2414 (Group updating doesn't work)
- #3782 (Security Context is not updated after editing GrantedAuthorities of a Group)
- #4082 (implement default permission groups)
- lower priority tickets:
- #4013 (GrantedAuthority: Humane label of TaxonNode authorities)
- #4014 (user friendly way to assign Authotity Roles to users or to Groups)
- #4052 (disentangle Group, Role, CdmAuthority, GrantedAuthorityImpl, ...)
- #4054 (Taxeditor, Group Bulkeditor cannot delete Group)
Related issues
Updated by Andreas Müller over 9 years ago
- Assignee changed from Andreas Müller to Andreas Kohlbecker
Updated by Andreas Kohlbecker over 9 years ago
Hallo Andreas und alle anderen,
(sorry Cherian for this Email completely in German)
hier die PermissionGroups die für Eumed und alle anderen Datenbanken gebraucht werden um die Rechte von Nutzern auf einzelne taxonomische Gruppen einschränken zu können.
Group "Editor" (wird immer gebraucht):
DESCRIPTIONELEMENTBASE.DESCRIPTIONBASE.[CREATE,UPDATE,DELETE,READ
TAXONBASE.[CREATE,UPDATE,DELETE,READ]
Pro Taxonomische Gruppe dann eine spezielle Gruppe, z.b
TAXONNODE.READ, UPDATE, DELETE{820604dc-00ac-4ffb-95d7-a6bcc012900f}
(keine Ahnung ob diese UUID stimmt ;-) ist nur ein Beispiel)
Ein User bekommt dann immer die Gruppe "Editor" plus eine spezielle TaxonNode bezogene Gruppe, und los geht's mit dem Editieren mit eingeschränkten Rechten
viele Grüße
Andreas
Updated by Andreas Kohlbecker over 9 years ago
- Status changed from New to In Progress
Updated by Andreas Kohlbecker almost 9 years ago
- Keywords set to Euro+Med,Migration
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #4101: Default value for publish bit of new taxa must be configurable via DB preferences added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #4011: disallow changing publish flag for users with unsuffcient rights added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #4133: publish flag inheritance for new taxa [DISCUSS] added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #4014: User friendly way to assign Authority Roles to users or to Groups added
Updated by Andreas Kohlbecker almost 6 years ago
- Description updated (diff)
- Private changed from Yes to No
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #5873: Implement rights&roles for TaxEditor distribution editor added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #6162: Implement "Forgot your password?" button in the Taxeditor connect dialog added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to task #3560: Withheld unpublished taxa from webservice used in E+M dataportal added
Updated by Andreas Kohlbecker almost 6 years ago
- Related to feature request #4305: newly created entities must stay editable even if a user only has the permission to create them added
Updated by Katja Luther about 4 years ago
- Related to feature request #8239: Rights issues in TaxEditor added
Updated by Andreas Müller about 4 years ago
- Target version changed from Euro+Med Migration to Euro+Med TaxEditor issues
Updated by Andreas Kohlbecker over 3 years ago
- Tags changed from euro+med, migration to euro+med, migration, permission
Updated by Andreas Müller over 1 year ago
- Status changed from In Progress to Resolved
- Assignee changed from Andreas Kohlbecker to Andreas Müller
- Target version changed from Euro+Med TaxEditor issues to Release 5.40
This is either fixed or needs to be split.
Updated by Andreas Müller about 1 year ago
- Target version changed from Release 5.40 to Release 5.31
Updated by Andreas Müller about 1 year ago
- Start date set to 01/01/2019
- % Done changed from 80 to 0
Updated by Andreas Müller about 1 year ago
- Start date changed from 01/01/2019 to 03/07/2022
Updated by Andreas Müller about 1 year ago
- Description updated (diff)
- Start date changed from 03/07/2022 to 03/10/2022
- Severity changed from critical to major
Updated by Andreas Müller about 1 year ago
- Due date changed from 03/16/2022 to 03/21/2022
- Start date changed from 03/10/2022 to 03/16/2022
Updated by Andreas Müller about 1 year ago
- Due date changed from 03/21/2022 to 04/08/2022
- Target version changed from Release 5.31 to Release 5.32
- Start date changed from 03/16/2022 to 04/01/2022
This is a review ticket only and therefore we can postpone it a bit.
Updated by Andreas Müller about 1 year ago
- Due date deleted (
04/08/2022) - Target version changed from Release 5.32 to Release 5.40
- Start date deleted (
04/01/2022)