Done
Details
Assignee
Julian LadischJulian LadischReporter
Natalia ZaitsevaNatalia ZaitsevaLabels
Priority
TBDDevelopment Team
Core: PlatformRelease
Ramsons (R2 2024)TestRail: Cases
Open TestRail: CasesTestRail: Runs
Open TestRail: Runs
Details
Details
Assignee
Julian Ladisch
Julian LadischReporter
Natalia Zaitseva
Natalia ZaitsevaLabels
Priority
Development Team
Core: Platform
Release
Ramsons (R2 2024)
TestRail: Cases
Open TestRail: Cases
TestRail: Runs
Open TestRail: Runs
Created August 20, 2024 at 4:38 PM
Updated November 1, 2024 at 11:59 PM
Resolved November 1, 2024 at 11:52 PM
To support automatic capabilities creation and keep FOLIO permission usage consistent, it is suggested that all module descriptors be reviewed and inconsistencies in permission namings and usage be fixed.
https://github.com/folio-org/folio-module-descriptor-validator can help teams with finding such problems in the module descriptor.
If the module is not a java based - https://github.com/folio-org/folio-module-descriptor-validator/blob/master/scripts/module-descriptor-batch-validator/README.md
Permission naming convention for renaming - https://folio-org.atlassian.net/wiki/spaces/FOLIJET/pages/156368925/Permissions+naming+convention
How to rename a permission:
https://folio-org.atlassian.net/wiki/spaces/TC/pages/5055284/DR-000014+-+Migration+of+Static+Permissions+Upon+Upgrade
https://github.com/folio-org/okapi/blob/master/doc/guide.md#permissions-and-the-_tenantpermissions-interface
Rules for Module Descriptor:
Permission name according to the convention
One permission can be used to protect only one endpoint
Endpoint should be protected by 0-1 permissions
Permission with sub permissions(Permission set) can’t be used for endpoint protection
folio-module-descriptor-validator report:
Module descriptor not valid: [ { "key" : "Permission name is not valid", "value" : "perms.permissions" }, { "key" : "Permission name is not valid", "value" : "perms.users" }, { "key" : "Permission protects more than one endpoint", "value" : "perms.permissions.get [/perms/permissions [GET], /perms/permissions/{id} [GET]]" }, { "key" : "Permission protects more than one endpoint", "value" : "perms.users.item.delete [/perms/users/{id}/permissions/{perm} [DELETE], /perms/users/{id} [DELETE]]" } ]
Scope:
Add plugin to the modules pom file and run build
Fix problems in module descriptor according to the Permission naming convention or rules
If module is not a java based - run local scripts and fix module descriptor