diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java index e7450f7e548226..3d9ce0438b1f5e 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java +++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/UserIdentity.java @@ -178,11 +178,11 @@ public static UserIdentity fromString(String userIdentStr) { } public boolean isRootUser() { - return user.equals(Auth.ROOT_USER); + return this.equals(ROOT); } public boolean isAdminUser() { - return user.equals(Auth.ADMIN_USER); + return this.equals(ADMIN); } public boolean isSystemUser() { diff --git a/regression-test/suites/account_p0/test_system_user.groovy b/regression-test/suites/account_p0/test_system_user.groovy index 5993e1d238b444..d7b3ad213fbbda 100644 --- a/regression-test/suites/account_p0/test_system_user.groovy +++ b/regression-test/suites/account_p0/test_system_user.groovy @@ -62,4 +62,42 @@ suite("test_system_user","p0,auth") { revoke select_priv on *.*.* from `admin`; """ + sql """ + create user `root`@'8.8.8.8'; + """ + sql """ + grant select_priv on *.*.* to `root`@'8.8.8.8'; + """ + sql """ + revoke select_priv on *.*.* from `root`@'8.8.8.8'; + """ + test { + sql """ + grant 'operator' to `root`@'8.8.8.8'; + """ + exception "Can not grant role: operator" + } + sql """ + drop user `root`@'8.8.8.8'; + """ + + sql """ + create user `admin`@'8.8.8.8'; + """ + sql """ + grant select_priv on *.*.* to `admin`@'8.8.8.8'; + """ + sql """ + revoke select_priv on *.*.* from `admin`@'8.8.8.8'; + """ + + sql """ + grant 'admin' to `admin`@'8.8.8.8'; + """ + sql """ + revoke 'admin' from `admin`@'8.8.8.8'; + """ + sql """ + drop user `admin`@'8.8.8.8'; + """ }