coder999o opened a new pull request, #7375: URL: https://github.com/apache/rocketmq-dashboard/pull/7375
## What is the purpose of the change Prevent ordinary plain-access configuration saves from silently replacing existing ACL rules that the plain-access form cannot represent. ## Brief changelog - Inspect and lock existing rules for the principal before modifying the account or replacing its rules. Reject the save with a conflict when a rule has an unsupported decision, scope, version, resource pattern, or other unrepresentable shape. - Add repository regressions for rejected rules and preserve existing duplicate-account conflict checks. ## Verifying this change - Before the change, `MybatisPlusAclRepositoryTest#plainAccessUpdateMustNotOverwriteDenyRulesTest` failed because the save did not reject the existing rule. - With JDK 22, `mvn -B -ntp -Drat.skip=true -Dtest=MybatisPlusAclRepositoryTest,AclServiceTest,AclControllerTest test` passed: 171 tests, zero failures and zero Checkstyle violations. - `git diff --check` passed. This is a partial safeguard. Concurrent inserts or modifications by other writers and stale submitted forms are not fully serialized by this check; the tests use mocks and do not establish multi-connection database isolation. Saving is intentionally rejected when existing rules cannot be represented, including edits to unrelated account fields. Existing stored rules are not migrated. -- 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]
