This is an automated email from the ASF dual-hosted git repository. shuwenwei pushed a commit to branch changePrivilegeOfShowVersion in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 79b33c8e9da3e708d6adc35a51bc7b979efb2269 Author: shuwenwei <[email protected]> AuthorDate: Wed Nov 12 09:45:26 2025 +0800 change the privilege of showVersionStatement --- .../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 9f4c2cf9fb6..c9cecd213d0 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
