From 4d80df15b0306dda69ea51698aacbcc998840432 Mon Sep 17 00:00:00 2001 From: zhangdong <493738387@qq.com> Date: Wed, 27 Mar 2024 16:57:05 +0800 Subject: [PATCH] [branch-2.0](cherry-pick)node priv can show proc #32751 (#32826) pick #32751 --- .../src/main/java/org/apache/doris/analysis/ShowProcStmt.java | 3 ++- .../java/org/apache/doris/mysql/privilege/PrivPredicate.java | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowProcStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowProcStmt.java index 239d41e1a93dd3..bc7c70cdc79257 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowProcStmt.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/ShowProcStmt.java @@ -45,7 +45,8 @@ public ProcNodeInterface getNode() { @Override public void analyze(Analyzer analyzer) throws AnalysisException { - if (!Env.getCurrentEnv().getAccessManager().checkGlobalPriv(ConnectContext.get(), PrivPredicate.ADMIN)) { + if (!Env.getCurrentEnv().getAccessManager() + .checkGlobalPriv(ConnectContext.get(), PrivPredicate.ADMIN_OR_NODE)) { ErrorReport.reportAnalysisException(ErrorCode.ERR_SPECIFIC_ACCESS_DENIED_ERROR, "ADMIN"); } node = ProcService.getInstance().open(path); diff --git a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PrivPredicate.java b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PrivPredicate.java index 6aae0e1c9c92d0..db750cd78f1779 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PrivPredicate.java +++ b/fe/fe-core/src/main/java/org/apache/doris/mysql/privilege/PrivPredicate.java @@ -54,6 +54,10 @@ public class PrivPredicate { public static final PrivPredicate ADMIN = PrivPredicate.of(PrivBitSet.of(Privilege.ADMIN_PRIV), Operator.OR); + public static final PrivPredicate ADMIN_OR_NODE = PrivPredicate.of( + PrivBitSet.of(Privilege.ADMIN_PRIV, Privilege.NODE_PRIV), + Operator.OR); + // load public static final PrivPredicate LOAD = PrivPredicate.of(PrivBitSet.of(Privilege.ADMIN_PRIV, Privilege.LOAD_PRIV),