Hi all,
I am trying to evaluate CMDBuild for a scenario that we have, and during this process, we have the need for a multi tenancy solution.
E.g every "customer" needs to have their own data...since each customer maintains their own CMDB data.
I have looked through the docs, and demos and done some research with google, to see if anyone else here has had a similar issue.
In our Scenario however the core setup and config is all the same for all, and should be controlled from one instance (or from a superadmin)
Some requirements of this is:
- Customer should not be able to access data for another entity
- Customer will need admin access so they can work with classes, cards, and db scripts
- Customer will connect to third party apps (Zabbix, or similar) that will update only their data
- Customer will use LDAP for access
- Customer will have x Users that will work in CMDBuild
- Customer will need to feel that this is "their" application
In a typical multi tenancy environment there is ONE application instance, and "tenants" or customers/entities can be configured by a superadmin.. either with a separate db for each, or true data separation (harder to enforce).
In our scenario, the different Customers (entities) also interact with each other, and thus might cause dependencies between CI objects, between the different data stacks.
So.. my question.. :)
Do we have to have a SEPARATE Application instance for each Entity in order to configure are separate DB for each ?
or is there a simpler way to do so..
(Scenario has today 20+ Entities.. though small in size)
REASONING
We are also thinking of implementing Alfresco in the scenario.
And in the CMDBuild settings, there is only a general setting for the application to connect to one specific Alfresco Site (dedicated to CMDB), and there does not look to be any option for multi tenancy.
Anyone who has ideas? or have done a customization for this that works?
Many thanks for any feedback
/David