Feature #2228
closedEvaluator for all identites that has contract on one organization unit
100%
Description
Goal of this ticket is create evaluator for identities that has at least one contract on specific organizational structure (including sub organizations).
Create all requirements in: https://wiki.czechidm.com/devel/documentation/modules_extras#developing_and_releasing
Related issues
Updated by Ondřej Kopr over 4 years ago
- Copied from Task #2217: Evaluator for all identites that has contract on one organization unit added
Updated by Peter Štrunc over 4 years ago
- Project changed from extras to IdStory Identity Manager
- Target version deleted (
2.2.0)
Updated by Ondřej Kopr over 4 years ago
- Tracker changed from Task to Feature
- Category set to 44
- Status changed from New to In Progress
- Target version set to 10.3.0
Updated by Ondřej Kopr over 4 years ago
- Status changed from In Progress to Needs feedback
- % Done changed from 0 to 90
I moved the evaluator from project to extras and not is moved from extras to product :)
Documentation:- https://wiki.czechidm.com/devel/documentation/security/dev/authorization#identitybytreenodeevaluator
- https://wiki.czechidm.com/devel/documentation/security/dev/authorization/identity_evaluator_by_work_position
Commit: https://github.com/bcvsolutions/CzechIdMng/commit/55adac933f02d3273edf04b43393272b4f5130ae
Branch: okopr/2228-evaluator-for-identities-on-treenode
Merge:
Please Radek could provide me a feedback? Thank you :)
Updated by Radek Tomiška over 4 years ago
- Assignee changed from Ondřej Kopr to Radek Tomiška
Updated by Radek Tomiška over 4 years ago
- Status changed from Needs feedback to In Progress
- Assignee changed from Radek Tomiška to Ondřej Kopr
- % Done changed from 90 to 80
Thx for this feature! I did test and code review, code is awesome!
Review notes:
- tree type is missing in predicate, so if more tree types are defined, then evalutor adds access to identity with different type by same forest index structure. Add predidace to clausule (e.g. https://github.com/bcvsolutions/CzechIdMng/blob/develop/Realization/backend/core/core-impl/src/main/java/eu/bcvsolutions/idm/core/model/service/impl/DefaultIdmIdentityService.java#L208)
- additional loading of tree node should be removed from both evaluator methods. Uuid is needed only and if node not exists, then simply nothing is found.
- #getPermissions - IdmIdentityService#count method should be used instead #find method (it will be quicker).
I just renamed evaluator by product conventions:
https://github.com/bcvsolutions/CzechIdMng/commit/56d2d8c82d176ae6b9c58b391a74791ffd395e9d
Updated by Ondřej Kopr over 4 years ago
- Status changed from In Progress to Needs feedback
- Assignee changed from Ondřej Kopr to Radek Tomiška
- % Done changed from 80 to 90
Thank you for review Radek. The issue with different tree type I change also in extras module in old version. Because when this happens the result may be catastrophic.
There is my changes: https://github.com/bcvsolutions/CzechIdMng/commit/2fa3e7c14d819e39cca5349704927181ffd3100c (same branch)
Thank you for feedback :)
All changes will be also moved to extras module. Please could you check the branch again?
Updated by Radek Tomiška over 4 years ago
- Status changed from Needs feedback to Resolved
- Assignee changed from Radek Tomiška to Ondřej Kopr
- % Done changed from 90 to 100
It's awesome, thx!
Updated by Radek Tomiška over 4 years ago
- Status changed from Resolved to Closed