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

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

commit f19824d287be7f66ecdb08882e79a91d31278abb
Author: shuwenwei <[email protected]>
AuthorDate: Wed Nov 12 11:07:58 2025 +0800

    Change the privilege of showVersionStatement #16736
    
    (cherry picked from commit 43b89b9a4802174864bd61699b6bfa5c2c34e723)
---
 .../java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionIT.java | 3 +--
 .../iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java       | 3 +--
 .../iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java     | 8 ++------
 .../queryengine/plan/execution/config/TableConfigTaskVisitor.java | 1 -
 .../plan/relational/security/TreeAccessCheckVisitor.java          | 2 +-
 5 files changed, 5 insertions(+), 12 deletions(-)

diff --git 
a/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionIT.java
index e5a8ee7ed83..2ebdd37758f 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionIT.java
@@ -193,6 +193,7 @@ public class IoTDBSystemPermissionIT {
   @Test
   public void maintainOperationsTest() {
     executeQuery("show queries", "test6", "test123123456");
+    executeQuery("show version", "test6", "test123123456");
     assertNonQueryTestFail(
         "kill query '20250918_015728_00003_1'", "714: No such query", "test6", 
"test123123456");
     assertNonQueriesTestFail(
@@ -205,7 +206,6 @@ public class IoTDBSystemPermissionIT {
           "set configuration 'enable_seq_space_compaction'='true'",
           "start repair data",
           "stop repair data",
-          "show version"
         },
         "803: No permissions for this operation, please add privilege SYSTEM",
         "test6",
@@ -220,7 +220,6 @@ public class IoTDBSystemPermissionIT {
     executeNonQuery("start repair data", "test6", "test123123456");
     executeNonQuery("stop repair data", "test6", "test123123456");
     executeQuery("show queries", "test6", "test123123456");
-    executeNonQuery("show version", "test6", "test123123456");
   }
 
   @Test
diff --git 
a/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java
index 98326a61ca9..aab39581ee5 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/db/it/auth/IoTDBSystemPermissionRelationalIT.java
@@ -65,6 +65,7 @@ public class IoTDBSystemPermissionRelationalIT {
   @Test
   public void maintainOperationsTest() {
     executeTableQuery("show queries", "test6", "test123123456");
+    executeTableNonQuery("show version", "test6", "test123123456");
     assertTableNonQueryTestFail(
         "kill query '20250918_015728_00003_1'", "714: No such query", "test6", 
"test123123456");
     assertTableNonQueriesTestFail(
@@ -77,7 +78,6 @@ public class IoTDBSystemPermissionRelationalIT {
           "set configuration enable_seq_space_compaction='true'",
           "start repair data",
           "stop repair data",
-          "show version"
         },
         "803: Access Denied: No permissions for this operation, please add 
privilege SYSTEM",
         "test6",
@@ -92,7 +92,6 @@ public class IoTDBSystemPermissionRelationalIT {
     executeTableNonQuery("start repair data", "test6", "test123123456");
     executeTableNonQuery("stop repair data", "test6", "test123123456");
     executeTableQuery("show queries", "test6", "test123123456");
-    executeTableNonQuery("show version", "test6", "test123123456");
   }
 
   @Test
diff --git 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
index e3acb184883..56425b4d7ff 100644
--- 
a/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
+++ 
b/integration-test/src/test/java/org/apache/iotdb/relational/it/query/recent/IoTDBMaintainAuthIT.java
@@ -112,12 +112,8 @@ public class IoTDBMaintainAuthIT {
     tableQueryNoVerifyResultTest("SHOW CURRENT_USER", expectedHeader, USER_2, 
PASSWORD);
 
     // case 5: show version
-    tableAssertTestFail(
-        "SHOW VERSION",
-        TSStatusCode.NO_PERMISSION.getStatusCode()
-            + ": Access Denied: No permissions for this operation, please add 
privilege SYSTEM",
-        USER_2,
-        PASSWORD);
+    expectedHeader = new String[] {"Version", "BuildInfo"};
+    tableQueryNoVerifyResultTest("SHOW VERSION", expectedHeader, USER_2, 
PASSWORD);
 
     // case 6: show current_timestamp
     expectedHeader = new String[] {"CurrentTimestamp"};
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/TableConfigTaskVisitor.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/TableConfigTaskVisitor.java
index 0475a27c26d..32b964ec584 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/TableConfigTaskVisitor.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/execution/config/TableConfigTaskVisitor.java
@@ -1358,7 +1358,6 @@ public class TableConfigTaskVisitor extends 
AstVisitor<IConfigTask, MPPQueryCont
   @Override
   protected IConfigTask visitShowVersion(ShowVersion node, MPPQueryContext 
context) {
     context.setQueryType(QueryType.READ);
-    accessControl.checkUserGlobalSysPrivilege(context);
     return new ShowVersionTask();
   }
 
diff --git 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
index d24ec3ef0d3..aa8c4d0ed80 100644
--- 
a/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
+++ 
b/iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/security/TreeAccessCheckVisitor.java
@@ -1730,7 +1730,7 @@ public class TreeAccessCheckVisitor extends 
StatementVisitor<TSStatus, TreeAcces
 
   @Override
   public TSStatus visitShowVersion(ShowVersionStatement statement, 
TreeAccessCheckContext context) {
-    return checkGlobalAuth(context, PrivilegeType.MAINTAIN, () -> "");
+    return SUCCEED;
   }
 
   @Override

Reply via email to