This is an automated email from the ASF dual-hosted git repository.

jackietien pushed a commit to branch auth
in repository https://gitbox.apache.org/repos/asf/iotdb.git


The following commit(s) were added to refs/heads/auth by this push:
     new 3665371ce86 fix list user privilege
3665371ce86 is described below

commit 3665371ce867ed005f34c5d34f24859fe9e734b0
Author: Weihao Li <[email protected]>
AuthorDate: Wed Sep 6 10:04:09 2023 +0800

    fix list user privilege
---
 .../iotdb/db/queryengine/plan/statement/sys/AuthorStatement.java | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/AuthorStatement.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/AuthorStatement.java
index 2608e8cfddd..ecdae8096b1 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/AuthorStatement.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/statement/sys/AuthorStatement.java
@@ -250,7 +250,6 @@ public class AuthorStatement extends Statement implements 
IConfigStatement {
             PrivilegeType.MANAGE_USER);
 
       case LIST_USER:
-      case LIST_USER_PRIVILEGE:
         if (AuthorityChecker.SUPER_USER.equals(userName)) {
           return new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode());
         }
@@ -258,6 +257,14 @@ public class AuthorStatement extends Statement implements 
IConfigStatement {
             AuthorityChecker.checkSystemPermission(userName, 
PrivilegeType.MANAGE_USER.ordinal()),
             PrivilegeType.MANAGE_USER);
 
+      case LIST_USER_PRIVILEGE:
+        if (AuthorityChecker.SUPER_USER.equals(userName) || 
userName.equals(this.userName)) {
+          return new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode());
+        }
+        return AuthorityChecker.getTSStatus(
+            AuthorityChecker.checkSystemPermission(userName, 
PrivilegeType.MANAGE_USER.ordinal()),
+            PrivilegeType.MANAGE_USER);
+
       case LIST_ROLE_PRIVILEGE:
         if (AuthorityChecker.SUPER_USER.equals(userName)) {
           return new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode());

Reply via email to