Cannot remove DISABLED file from ESE

I’m running HiveMQ 4.18 broker on Docker with trial license (5hr limit). I’ve stopped broker and restarted multiple times and still can not remove the DISABLED file within the /opt/hivemq-4.18.0/extensions/hivemq-enterprise-security-extension folder. Anyone have any thoughts?

Good morning tweiss23,

welcome to our community! Does the broker’s hivemq.log show anything related to the startup of your Enterprise Security Extension? I would expect to see a log message giving some hints as to why the extension startup has failed.

Kind regards,
Finn

Hi Finn,

I see this error in the log file -
2023-08-17 02:39:34,647 ERROR - The Enterprise Security Extension could not parse the configuration file /opt/hivemq/extensions/hivemq-enterprise-security-extension/conf/config.xml. Reason: Content is not allowed in prolog.
2023-08-17 02:39:34,648 ERROR - The HiveMQ Enterprise Security Extension could not start because of a configuration error: Could not parse the configuration file.

I removed some characters from the 1st line of the config.xml file in the extensions folder and got past that error. Now I am having an issue connecting to Postgres image from the HiveMQ broker image.

Hi @tweiss23 ,

It seems that your /opt/hivemq-4.18.0/extensions/hivemq-enterprise-security-extension/conf/config.xml is referencing a Postgres database that you do not have.

To confirm, please

  1. Share the full text of the error or exception.
  2. Share the content of the /opt/hivemq-4.18.0/extensions/hivemq-enterprise-security-extension/conf/config.xml

If your goal is to configure ESE with SQL database, please follow the HiveMQ Enterprise Security Extension (ESE) Start Up Guide :: HiveMQ Documentation which explains step by step how to set the database up.

If your goal is to get ESE running now, and configure RBAC later, then you can temporarily use the following “dummy” setup in the /opt/hivemq-4.18.0/extensions/hivemq-enterprise-security-extension/conf/config.xml :

<?xml version="1.0" encoding="UTF-8" ?>
<enterprise-security-extension
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="config.xsd"
        version="1">

    <pipelines>
        <listener-pipeline listener="ALL">
            <allow-all-authentication-manager/>
            <allow-all-authorization-manager/>
        </listener-pipeline>
    </pipelines>
</enterprise-security-extension>

I hope this helps. Should you require further assistance please do not hesitate to ask.

Best regards,
Dasha from HiveMQ Team

Hi Dasha,

I have Postgres in another container that is on the same network. It appears it could not find the jar file, I issued a classpath statement for the jdbc driver and I was able to get ESE working.

Tom