We’re hosting a special live webinar today with guest presenter Mark Heckler from Microsoft.
Vaadin makes it easy to build modern web apps in Java. Vaadin Control Center simplifies deployment and scaling on Kubernetes, while Azure provides the robust, secure infrastructure to run those apps reliably and at scale.
In this hands-on session, Joonas Lehtinen (Vaadin) and Mark Heckler (Microsoft) will walk through:
Building a Vaadin app and connecting it with Control Center
Setting up an Azure Kubernetes cluster
Deploying the app using Vaadin Control Center
Expect practical insights, a live demo, and a lively discussion on how Vaadin and Azure streamline Java development and cloud deployment.
Date: Today, Tuesday, April 29, 2025 Time: 17:30 CEST / 11:30 AM EDT Location:Live on YouTube
I posted a question in the video about multi tenancy, but I should have been more specific
I have made an app running as a SaaS solution to the customers.
In so far, I am using PostgreSQL with Row Level Security (RLS) adding a tenant_id to every table and utilizing PostgreSQL policies to enforce it.
Every new customer is created with a UUID as tenant_id and a tenant specific DB user role is also created,
I’m using plain JDBC for data access and have centralized getting a connection, since I have to switch the DB user role to the specific DB user role (“set role” + tenantId ) for every connection.
On top of that I’m using Vaadin with Spring security and the plan is to run it with a cloud provider, very likely Azure.
This setup was chosen to simplify maintenance having multiple customers, one DB and one app server.
So far so good, sorry for the long intro.
There are of cause several options for multi tenancy and I’m wondering about two issues.
Is there anything regarding Vaadin with respect to this specific setup, that I should be aware of?
What would be the better way, to avoid security issues, such as customers getting access to each others data, while keeping it simple for maintenance and cost? Is it one Kubernetes setup per customer, with separate DB and everything?
Sorry if this is a bit off topic, but the webinar made me wonder if you have any input.
My initial reaction is that there is not and there should not be, as Vaadin does not really have much what comes to backend access, you need to think this from Spring Boot perspective, and there seems to be some resources about this in the internet like this:
Replace the REST application concept in above blog with Vaadin application.
Thanks for the link, I will take a look, though my concern is not with Postgres or Spring in this case.
I agree that ideally there should not be any reason for Vaadin to be affected, but sometimes there is a quirk somewhere.
Thanks again.