Multi-tenancy or multi-instances approach

Hi guys. I am very interested in this project and I’m still researching before to fully using it.
One of the potential requirements is that there should be a higher-level user type that would manage multiple instances of Kanboard, where different companies/tenants or admins will have their own projects and activity, but fully independent of each other.
All using one and the same Kanboard installation/DB/files.
From what I saw, this option doesn’t seem to exist.
Thanks a lot for any details! :slight_smile:
I would see some implementation along the lines of:

  • Database Schema Modification:
    Add a tenant_id column to all tables that need to store tenant-specific data. This column will help segregate data for different tenants.
  • User Management:
    Modify the user management system to associate each user with a tenant_id.
  • Data Filtering:
    Ensure that all queries filter data based on the tenant_id of the logged-in user. This will prevent users from accessing data that belongs to other tenants.

I can not reproduce that problem with

My Configuration

  • Application version: 1.2.36
  • PHP version: 8.3.6
  • PHP SAPI: fpm-fcgi
  • HTTP Client: cURL
  • OS version: Linux 5.4.0-181-generic
  • Database driver: mysql
  • Database version: 10.5.23-MariaDB-1:10.5.23+maria~ubu2004-log
  • Plugins:
    • Wiki 0.3.3a by Alfred
    • Moon 1.4.6
  • Browser: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:117.0a) Gecko/20100101 SeaMonkey/2.53.18, Build 20240329110002
  • Colud installation at All-inkl.com

@reporter:

  1. Please tell details of your installation.
  2. In which situation do you see the error message?
  3. Did you already check whether the reason for the problem is some bad interaction with other installed plugins?

Instead of tenants you can separate users into user-groups

With groups and the permission-system you can separate tenants and their data/projects.
It’s not completely segregated though. project owners could invite other groups at will.

For completely closed of tenants you’d need a reverse proxy and a way to load a different config.php with different database accesses per tenant - I’m not sure if that’s possible though - or multiple vhosts / docker containers.

2 Likes