Multi tenancy Alessandra Toninelli 2013/10/10 15:58
Table of Contents 1 Overview.. 3 2 Configuration... 3 Page 2 - last modified by Alessandra Toninelli on 2013/10/10 15:58
Multi-tenancy is supported starting SpagoBI 3.5 1 Overview 2 Configuration 1 Overview Starting version 3.5, SpagoBI supports multi-tenancy, i.e., the use of the same SpagoBI instance by different organizations, called tenants. In a multi-tenancy architecture, each tenant owns and manages its users, documents, analytical drivers and so on, which are completely independent from those owned by other tenants. In the current version, multi-tenancy is implemented according to certain criteria. As far as the behavioral model is concerned, the following rules apply: each user belongs to one tenant only; each user is defined unambiguously over the whole set of users, belonging to all tenants. This means that if a user has been defined for a given tenant, no user with the same name can be defined for another tenant; roles and profile attributes can be defined across tenants. This means that users belonging to different tenants may assume the same role or have the same attribute profiles. The following elements are shared across tenants: general configuration and domain management; layout of the web interface is also shared across tenants; repository of static resources (e.g., OLAP schemas, QbE datamarts, HTML static pages); data source configuration in the application server. Although the data source configuration is shared across tenants in the application server, each tenant will have to define his own data sources at application level. 2 Configuration At first execution, SpagoBI will create the default tenant, called SPAGOBI. If you do not need multiple tenants, you can simply ignore this feature as SpagoBI will normally work with the default tenant. In case you wish to change the name of the default tenant, you must do this before first server execution. In particular, you should perform the following operations: change the name of the unique tenant you find inside file SpagoBI/WEB-INF/conf/config/tenants.xml: "ISO-8859-15"?> <TENANTS> "your tenant's name" /> </TENANTS> in file SpagoBI/WEB-INF/conf/config/internal_profiling.xml change the name of the default tenant for all pre-defined users. If you don t need additional tenants, you are done. In case you need to add multiple tenants, here is the procedure you should follow: stop the application server edit file SpagoBI/WEB-INF/conf/config/tenants.xml to add more tenants. An example with two tenants is shown below: "ISO-8859-15"?> Page 3 - last modified by Alessandra Toninelli on 2013/10/10 15:58
<TENANTS> "TENANT A" /> "TENANT B" /> </TENANTS> edit file SpagoBI/WEB-INF/conf/config/internal_profiling.xml to add at least one adiministrator per tenant. This will allow the administrator to further define roles, users, documents and so on. Below an example: "ISO-8859-1"?> <INTERNAL_PROFILING_INITIALIZER> <DEFAULT_USERS> <default users for TENANT A> <USER userid= "<user id administrator>" password= "<password administrator>" fullname= "full name administrator" organization= "TENANT B"> <ATTRIBUTE name= "attribute tenant B" value= <ROLE name= "/spagobi/admin"/> </USER> </DEFAULT_USERS> <DEFAULT_ATTRIBUTES> < default attributes for TENANT A> <ATTRIBUTE name= "attribute tenant B" description= Page 4 - last modified by Alessandra Toninelli on 2013/10/10 15:58
"attribute tenant B" organization= </DEFAULT_ATTRIBUTES> <DEFAULT_ROLES> <default roles for TENANT A> <ROLE rolename= "/spagobi/admin" description= "/spagobi/admin" roletypecd= "ADMIN" organization= </DEFAULT_ROLES> </INTERNAL_PROFILING_INITIALIZER> restart the application server. You are done! At server startup the new tenant will be created with its default users, which will then create the analytical and behavioral model for that tenant. Page 5 - last modified by Alessandra Toninelli on 2013/10/10 15:58