I recently installed openremote at the university to test the migration from the thingsboard platform. I have a legacy device already configured with an MQTT user/password that is already working with the thingsboard platform. Perhaps this Tutorial (Tutorial: Connect your MQTT Client · openremote/openremote Wiki · GitHub) could guide me through the migration, but how can I define a Service User for MQTT connection with a specific password if I can’t reset the secret (I can only regenerate it with a new random one).
Thanks!!
Unfortunately you’re not able to change a service user’s password. A service user is a keycloak client. You can not set the secret of a client, but you can regenerate it.
Something that popped up in a Google search, that you might want to attempt, but I cannot assure you that it will work: Keycloak - Set static client secret - Stack Overflow
Thanks for your help, but apparentley the steps presented at Keycloak - Set static client secret - Stack Overflow does not exist on the free version. The export only appears for asset data.
I’m not sure what went wrong for you but I was able to export, edit, and import the client on my local instance. I also do not understand what exactly you mean by free version. This is something that you need to do in Keycloak, which you can access through <OR_HOSTNAME>/auth
.
I’m newbie here and I didn’t realize that keycloak was on a different URL than the openremote manager interface. Now it worked, but I still have another problem: access must use “master:” before the username and I believe this cannot be changed, right ?
So from what I understand, you can also not change the MQTT username that you use to log into the OpenRemote MQTT broker.
The issue with this “master:
” string is that it’s what we use to separate different realms. I can’t think of anything to change that, @Rich do you maybe have any ideas? Something like changing org.openremote.manager.mqtt.ActiveMQORSecurityManager#getAuthenticatedSubject
to use “master” as default or using an environment variable?