Hello! I'm looking for a BI platform that we can embed into our own back-office application, and I just discovered Metabase. It looks great!
I have a question about how we can manage users seamlessly in our application. We would need a good API for:
- Creating new users. This seems to exist already.
- Authenticate users without password. This does not seem to exist. I understand this API cannot be exposed publicly of course, since it would be a major security flaw. But we would need an API that can be called from our back-office backend to the Metabase backend to gain access to some session ID, and then have a way of using this session ID.
The idea I have is that we'll open Metabase in a new browser tab (or window) and pass along this session ID somehow.
We would also want to disable the regular login page, of course, so we can fully manage users in our back-office.
Does anyone have any insights on this? Have anyone done anything similar?
Sounds like you are just looking for SSO, where you might find JWT useful for your use-case:
There are different ways of embedding Metabase:
But otherwise you can do a lot yourself via the API and with some advanced reverse-proxy knowledge.
Oh, that looks interesting, indeed! Thanks. I started up the Metabase Docker image, and under the Admin Panel and Authentication, I can only see "Sign in with Google" and "LDAP".
Aha, looking a bit further, I see that it's for the paid plan.
Is there a way of testing out the JWT authentication without paying? I'd love to mess around with how it work, before proceeding with a paid plan.
@anton-johansson There's a free trial: https://www.metabase.com/pricing
If you are expecting more than 100 users, then you should contact sales, since it might be cheaper to get the Enterprise plan.
I'll do some prepping, then try out the free trial. Thanks @flamber for the quick replies!