diff --git a/src/security.c b/src/security.c index 802c188b..a019ada5 100644 --- a/src/security.c +++ b/src/security.c @@ -197,7 +197,15 @@ int mosquitto_acl_check(struct mosquitto_db *db, struct mosquitto *context, cons if(!db->auth_plugin.lib){ return mosquitto_acl_check_default(db, context, topic, access); }else{ - return db->auth_plugin.acl_check(db->auth_plugin.user_data, context->id, context->username, topic, access); +#ifdef WITH_BRIDGE + if(context->bridge){ + return db->auth_plugin.acl_check(db->auth_plugin.user_data, context->id, context->bridge->local_username, topic, access); + }else{ +#endif + return db->auth_plugin.acl_check(db->auth_plugin.user_data, context->id, context->username, topic, access); +#ifdef WITH_BRIDGE + } +#endif } }