From f9f361edbb2db3e3722bfb4a32235ed9469eaff1 Mon Sep 17 00:00:00 2001 From: hexueyuan Date: Wed, 11 Jun 2025 16:35:55 +0800 Subject: [PATCH 1/4] [ISSUE #9462] Fix incorrect logic in AclAuthorizationHandler.comparePolicyEntries. --- .../auth/authorization/chain/AclAuthorizationHandler.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java index 06a130b2e0a..ac0ef15968d 100644 --- a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java +++ b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java @@ -139,13 +139,13 @@ private int comparePolicyEntries(PolicyEntry o1, PolicyEntry o2) { if (r1.getResourcePattern() == ResourcePattern.LITERAL) { compare = 1; } - if (r1.getResourcePattern() == ResourcePattern.LITERAL) { + if (r2.getResourcePattern() == ResourcePattern.LITERAL) { compare = -1; } if (r1.getResourcePattern() == ResourcePattern.PREFIXED) { compare = 1; } - if (r1.getResourcePattern() == ResourcePattern.PREFIXED) { + if (r2.getResourcePattern() == ResourcePattern.PREFIXED) { compare = -1; } } From 10c86c3844882e3915a309730fc4ac0cbf2cc767 Mon Sep 17 00:00:00 2001 From: hexueyuan Date: Thu, 19 Jun 2025 10:12:14 +0800 Subject: [PATCH 2/4] Restart check actions. From 1dd527c439bce35844a882b3f061dc5304007e5f Mon Sep 17 00:00:00 2001 From: hexueyuan Date: Fri, 27 Jun 2025 19:03:44 +0800 Subject: [PATCH 3/4] [ISSUE #9462] Fix incorrect logic in AclAuthorizationHandler.comparePolicyEntries. --- .../auth/authorization/chain/AclAuthorizationHandler.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java index ac0ef15968d..f76b091b215 100644 --- a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java +++ b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java @@ -136,13 +136,13 @@ private int comparePolicyEntries(PolicyEntry o1, PolicyEntry o2) { compare = Integer.compare(n1.length(), n2.length()); } } else { - if (r1.getResourcePattern() == ResourcePattern.LITERAL) { + if (r2.getResourcePattern() == ResourcePattern.LITERAL) { compare = 1; } - if (r2.getResourcePattern() == ResourcePattern.LITERAL) { + if (r1.getResourcePattern() == ResourcePattern.LITERAL) { compare = -1; } - if (r1.getResourcePattern() == ResourcePattern.PREFIXED) { + if (r2.getResourcePattern() == ResourcePattern.PREFIXED) { compare = 1; } if (r2.getResourcePattern() == ResourcePattern.PREFIXED) { From 880ddfbe8a485691a3cc9638bf6a1511799ff9af Mon Sep 17 00:00:00 2001 From: hexueyuan Date: Thu, 10 Jul 2025 10:24:36 +0800 Subject: [PATCH 4/4] [ISSUE #9462] Fix incorrect logic in AclAuthorizationHandler.comparePolicyEntries. --- .../auth/authorization/chain/AclAuthorizationHandler.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java index f76b091b215..61bec9d9ee2 100644 --- a/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java +++ b/auth/src/main/java/org/apache/rocketmq/auth/authorization/chain/AclAuthorizationHandler.java @@ -145,7 +145,7 @@ private int comparePolicyEntries(PolicyEntry o1, PolicyEntry o2) { if (r2.getResourcePattern() == ResourcePattern.PREFIXED) { compare = 1; } - if (r2.getResourcePattern() == ResourcePattern.PREFIXED) { + if (r1.getResourcePattern() == ResourcePattern.PREFIXED) { compare = -1; } }