Aias00 opened a new pull request, #4162: URL: https://github.com/apache/rocketmq-dashboard/pull/4162
Fixes #4161. ## Problem Studio maps each Tencent Cloud RocketMQ role to both an ACL user and a cluster-wide ACL rule. The two resources have separate delete actions, but the rule deletion path called Tencent Cloud `DeleteRole`, exactly like user deletion. Deleting a rule therefore also removed the role account and its access credentials. Roles with both `PermRead` and `PermWrite` disabled were also returned as ACL rules with an empty action list. ## Changes - Change `TencentAclService.deleteRule` to call `ModifyRole` with `PermRead=false` and `PermWrite=false`. - Exclude permissionless roles from `listRules`, while leaving them visible in the ACL user list. - Keep explicit ACL user deletion on `DeleteRole`. - Add regression coverage for all three behavior boundaries. ## Testing The two new behavior tests failed against the base commit: - rule deletion invoked `DeleteRole` instead of `ModifyRole`; - the rule list included a role with neither permission. After the fix: ```text mvn -B test -Dtest='TencentAclServiceTest,AclServiceTest' Tests run: 79, Failures: 0, Errors: 0, Skipped: 0 BUILD SUCCESS Checkstyle violations: 0 ``` Tests were run with Java 21. ## Compatibility This is limited to the Tencent ACL provider. It does not change REST contracts, persistence, frontend code, or other vendors. Existing Tencent role accounts remain intact when their mapped rule is deleted; the separate user deletion action remains destructive by design. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
