Task #433
openProvisioning of TreeNodes - choose which TreeNodes provision to which systems
0%
Description
As it stands now, tree nodes are provisioned to every system which has a mapping for "Entity type" - "Tree". But the usual use case is to provision only a subset of them to a given system. We need to design a sophisticated system which will handle most of the common scenarios. The ideas we came up with:
- When an entity is saved but before provisioning is done (before AccAccounts are created) fire an event for each system, that provisioning wants to be performed. The event will contain the entity, target system and also will have the option to cancel the provisioning operation for the given system. Advantage of this approach is, that the logic is performed in the processor and will suffice also for very complicated scenarios but it can't be configured from GUI.
- Other approach is trough types. For example we create attribute "provisioningType". Then we configure which systems should be provisioned for which values. For example if the value is "Organisation", do provisioning to "System1" and "System2". If the value is "Workposition", do provisioning to "System2". This has the benefit that it can be easily configured by administrators.
The best would be do both of these approaches to be prepared for every situation. Also the first approach can be useful also for other object types than TreeNodes. Let me know your opinions on the subject.
Updated by Marcel Poul over 7 years ago
- Category set to Provisioning
- Target version set to Diamond (7.4.0)
The same stands for other entities that support provisioning e.g. Role, Catalog.
On a project, we have some difficulties when the account management is done to all systems, even if we have some projspec code that cuts the provisioning that we do not want to do.
Updated by Vít Švanda over 7 years ago
Good place for skip provisioning are in save processors (TreeNodeSaveProcessor ... ). It means before do account management.
Updated by Filip Měšťánek over 7 years ago
Yes, that's true, but this ticket is about developing a generic solution.
Updated by Vít Švanda about 7 years ago
- Target version deleted (
Diamond (7.4.0))