[Urgent, 911] How to change Metabase Settings directly in database?

We're experiencing this issue: Cannot save settings for LDAP

We can't currently change our LDAP Settings, and we're teetering on getting locked out of our instance. Actually, as it stands right now, we can't even disable LDAP because nothing on that page can be modified!

We noticed there's a setting table. The values appear to be Base64, but if we decode them, they decode to gibberish. I imagine that's because we have credential encryption enabled. Is there a command line utility to encrypt new values? We need to change the password it uses to access LDAP immediately.

Thank you!

Hi @jsf
You are running with encrypted appdb:
https://www.metabase.com/docs/latest/operations-guide/encrypting-database-details-at-rest.html
You would have to unencrypt.
But you can just write false as the value, which then is automatically turned into encrypted later.
Or use the environment variables to override: https://www.metabase.com/docs/latest/operations-guide/environment-variables.html

1 Like

Brilliant, thank you sir, we'll backup the table then give those routes a try.

@jsf Don't need to backup anything (but always a good idea), since the environment variables are not saved in Metabase, but only works in the envvar session. It's a great way to get out of a pinch instead of changing something in the database.

Thank you sir! That got us out of a sticky situation.

The bug still persists, for instance, we'd like to enable "SYNCHRONIZE GROUP MEMBERSHIPS" but when we change the setting and click save, we get "Don't know how to create ISeq from: java.lang.Integer". We can certainly live without this for the time being, but cannot change the value.

@jsf Can you please create a new issue about it with enough details, then I'll try to reproduce later, but I'm a little busy right now.

I

We can toss a JVM debugger on it and grab some local variables if that would help you out.