Repository: hbase Updated Branches: refs/heads/branch-1 7b7b39805 -> 9ee9a4bd2
HBASE-12647 Truncate table should work with C as well Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/9ee9a4bd Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/9ee9a4bd Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/9ee9a4bd Branch: refs/heads/branch-1 Commit: 9ee9a4bd200a56d83f74a9ce12b86c1da615698f Parents: 7b7b398 Author: Enis Soztutar <[email protected]> Authored: Sun Dec 7 20:57:04 2014 -0800 Committer: Enis Soztutar <[email protected]> Committed: Sun Dec 7 20:58:55 2014 -0800 ---------------------------------------------------------------------- .../hadoop/hbase/security/access/AccessController.java | 2 +- .../hadoop/hbase/security/access/TestAccessController.java | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/9ee9a4bd/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java index 1ddceea..c174a01 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/security/access/AccessController.java @@ -930,7 +930,7 @@ public class AccessController extends BaseMasterAndRegionObserver @Override public void preTruncateTable(ObserverContext<MasterCoprocessorEnvironment> c, final TableName tableName) throws IOException { - requirePermission("truncateTable", tableName, null, null, Action.ADMIN); + requirePermission("truncateTable", tableName, null, null, Action.ADMIN, Action.CREATE); final Configuration conf = c.getEnvironment().getConfiguration(); User.runAsLoginUser(new PrivilegedExceptionAction<Void>() { @Override http://git-wip-us.apache.org/repos/asf/hbase/blob/9ee9a4bd/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java index 81d42dd..7e23aa6 100644 --- a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java +++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAccessController.java @@ -150,6 +150,10 @@ public class TestAccessController extends SecureTestUtil { // user with no permissions private static User USER_NONE; + // TODO: convert this test to cover the full matrix in + // https://hbase.apache.org/book/appendix_acl_matrix.html + // creating all Scope x Permission combinations + private static TableName TEST_TABLE2 = TableName.valueOf("testtable2"); private static byte[] TEST_FAMILY = Bytes.toBytes("f1"); private static byte[] TEST_QUALIFIER = Bytes.toBytes("q1"); @@ -335,8 +339,8 @@ public class TestAccessController extends SecureTestUtil { } }; - verifyAllowed(truncateTable, SUPERUSER, USER_ADMIN); - verifyDenied(truncateTable, USER_RW, USER_RO, USER_NONE,USER_CREATE, USER_OWNER); + verifyAllowed(truncateTable, SUPERUSER, USER_ADMIN, USER_CREATE); + verifyDenied(truncateTable, USER_RW, USER_RO, USER_NONE, USER_OWNER); } @Test
