Multi-tenancy (Dashboard selection from accounts & users)

How do we provide multi-tenancy to our clients?

Recently I’ve been in touch with Dundas Support, however I’m not sure the suggested Multi-tenancy features suggested below solve our use case:

You can install and maintain one application of Dundas BI across all client by using multitenancy. This is good if you don’t want the users to know about the existence of other users in the system. In Dundas BI, you can achieve this by using custom attributes or by adding different tenant.

A multi-tenant instance is used when the application deployment is done for users who shouldn’t know about the existence of other users using the same system. It allows the solution provider to install and maintain one application of Dundas BI to handle all their clients (tenants). You can check this article for more details.

The main use case for multi-tenancy is to use data connector overrides to allow multiple tenants to share the same data connector, dashboards, etc., but have them display data from a different database for each tenant. For example, each tenant might maintain their own database, or you may decide to use separate databases for security reasons. A step by step implementation of implementing data connection overrides and creating tenants is show in the following link.

If you are using the same database for all users and want to filter out the data based on users you can use custom attributes instead. More information on custom attributes can be found on this link.

I need to be able to promote specific dashboards only to certain user accounts, they are all currently being pulled from the same database. Ideally I’d like to be able to select an account and then select which dashboards they will be able to see in our portal.

Any help would be appreciated.

Best,

Jack

1 Like

Hi Jack,

Indeed, the use case you presented may not require multi-tenancy but that depends on other requirements you may or may not have. If all you want to do is simply control the access level to different dashboards to certain users, then you can simply set the permissions (security privileges) of those dashboards accordingly and that won’t require multi-tenancy. The permissions can be set at the file (i.e. dashboard or report level) or at the project or folder level which is typically easier to manage so you don’t need to reapply the permissions every time a dashboard or a report is added and instead you can just add it to the same project or folder. The decision whether to use a project or a folder or to set the security at the object level depends on how many files you envision to create per user and how many users will have access to the same file. if it’s a single dashboard per user then I would recommend setting the permissions at the file level however, if you have multiple users accessing the same file and you envision adding more files to the same group in the future I would go with a project or folder. You can see more recommendation about how to organize your projects under this post.

Note that by setting the permissions you will only control the access to those files. That will not restrict the users ability to try and share a file. For example, if a user that is permitted to access a certain dashboard click on the share as link option, he will be able to see all the other users in the system and try to share with them. It is possible he will share an item with a user that isn’t permitted to access the file. When that user will try to open the link that was shared with him he will be denied however, he will still show up on the lists of users. This isn’t an issue if your users are from the same organization but in some cases your users may be from different organizations and in that case, you would want to make sure that when they click on the share button they can only see users that belong to the same organization (tenant). This is one example where the multi-tenancy can come in handy in your case. Of course, you can always deny the users from having the option to share as a link and then the list of users will not be visible to them.

1 Like