Hi hbase-dev, Why do we need ADMIN permissions for AccessController#preListDecommissionedRegionServers API ?
>From Phoenix, we are calling Admin#getRegionServers(true) where the argument excludeDecommissionedRS is set to true. [1] If excludeDecommissionedRS is set to true and if we have AccessController co-proc attached, it requires ADMIN permissions to execute listDecommissionedRegionServers RPC. [2] Snippet below @Override public void preListDecommissionedRegionServers(ObserverContext<MasterCoprocessorEnvironment> ctx) throws IOException { requirePermission(ctx, "listDecommissionedRegionServers", Action.ADMIN); } I understand that we need ADMIN permissions for preDecommissionRegionServers and preRecommissionRegionServers because it changes the membership of regionservers but I don’t see any need for ADMIN permissions for listDecommissionedRegionServers. Does anyone have objections if we relax the requirement to READ permissions instead of ADMIN permissions? I have created HBASE-28391 <https://issues.apache.org/jira/browse/HBASE-28391> to implement this. Thank you ! 1. https://github.com/apache/hbase/blob/branch-2.5/hbase-client/src/main/java/org/apache/hadoop/hbase/client/Admin.java#L1721-L1730 2. https://github.com/apache/hbase/blob/branch-2.5/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java#L1205-L1207