Search before creation
Documentation Related
The ACL documentation (both English and Chinese) only mentions
aclEnable=true as the required broker configuration. However, in
RocketMQ 5.x, the following additional properties are required:
- authenticationEnabled=true
- authorizationEnabled=true
- migrateAuthFromV1Enabled=true
- authenticationMetadataProvider=org.apache.rocketmq.auth.authentication.provider.LocalAuthenticationMetadataProvider
- authorizationMetadataProvider=org.apache.rocketmq.auth.authorization.provider.LocalAuthorizationMetadataProvider
Evidence from source code:
- AbstractAuthenticationStrategy.java:54 — returns immediately if
authenticationEnabled is false
- AbstractAuthorizationStrategy.java:54 — same for authorizationEnabled
- AuthMigrator.java:72 — plain_acl.yml is not loaded without
migrateAuthFromV1Enabled
- AuthenticationFactory.java:80-81 — returns null if
authenticationMetadataProvider is blank, causing
"authenticationMetadataProvider is not configured" error
Without these properties, ACL either silently allows all traffic or
throws configuration errors.
Are you willing to submit PR?
Search before creation
Documentation Related
The ACL documentation (both English and Chinese) only mentions
aclEnable=trueas the required broker configuration. However, inRocketMQ 5.x, the following additional properties are required:
Evidence from source code:
authenticationEnabled is false
migrateAuthFromV1Enabled
authenticationMetadataProvider is blank, causing
"authenticationMetadataProvider is not configured" error
Without these properties, ACL either silently allows all traffic or
throws configuration errors.
Are you willing to submit PR?