blob: 15dc079280d0f2527b436075f91c8d8af5571410 [file] [log] [blame]
PREHOOK: query: -- create a table owned by user1
create table exchange_partition_test_1(a int) partitioned by (b int)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@exchange_partition_test_1
POSTHOOK: query: -- create a table owned by user1
create table exchange_partition_test_1(a int) partitioned by (b int)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@exchange_partition_test_1
PREHOOK: query: show grant user user1 on table exchange_partition_test_1
PREHOOK: type: SHOW_GRANT
POSTHOOK: query: show grant user user1 on table exchange_partition_test_1
POSTHOOK: type: SHOW_GRANT
default exchange_partition_test_1 user1 USER DELETE true -1 user1
default exchange_partition_test_1 user1 USER INSERT true -1 user1
default exchange_partition_test_1 user1 USER SELECT true -1 user1
default exchange_partition_test_1 user1 USER UPDATE true -1 user1
PREHOOK: query: set role admin
PREHOOK: type: SHOW_ROLES
POSTHOOK: query: set role admin
POSTHOOK: type: SHOW_ROLES
PREHOOK: query: -- add data to exchange_partition_test_1
insert overwrite table exchange_partition_test_1 partition (b=1) select key from src
PREHOOK: type: QUERY
PREHOOK: Input: default@src
PREHOOK: Output: default@exchange_partition_test_1@b=1
POSTHOOK: query: -- add data to exchange_partition_test_1
insert overwrite table exchange_partition_test_1 partition (b=1) select key from src
POSTHOOK: type: QUERY
POSTHOOK: Input: default@src
POSTHOOK: Output: default@exchange_partition_test_1@b=1
POSTHOOK: Lineage: exchange_partition_test_1 PARTITION(b=1).a EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ]
PREHOOK: query: set role all
PREHOOK: type: SHOW_ROLES
POSTHOOK: query: set role all
POSTHOOK: type: SHOW_ROLES
PREHOOK: query: -- switch user
-- create a table owned by user2 (as a result user2 will have insert privilege on exchange_partition_test_2 but no select + delete previlege on exchange_partition_test_1)
create table exchange_partition_test_2(a int) partitioned by (b int)
PREHOOK: type: CREATETABLE
PREHOOK: Output: database:default
PREHOOK: Output: default@exchange_partition_test_2
POSTHOOK: query: -- switch user
-- create a table owned by user2 (as a result user2 will have insert privilege on exchange_partition_test_2 but no select + delete previlege on exchange_partition_test_1)
create table exchange_partition_test_2(a int) partitioned by (b int)
POSTHOOK: type: CREATETABLE
POSTHOOK: Output: database:default
POSTHOOK: Output: default@exchange_partition_test_2
PREHOOK: query: show grant user user2 on table exchange_partition_test_2
PREHOOK: type: SHOW_GRANT
POSTHOOK: query: show grant user user2 on table exchange_partition_test_2
POSTHOOK: type: SHOW_GRANT
default exchange_partition_test_2 user2 USER DELETE true -1 user1
default exchange_partition_test_2 user2 USER INSERT true -1 user1
default exchange_partition_test_2 user2 USER SELECT true -1 user1
default exchange_partition_test_2 user2 USER UPDATE true -1 user1
PREHOOK: query: -- execute alter table exchange partition to add data to exchange_partition_test_2 (this should fail)
explain authorization alter table exchange_partition_test_2 exchange partition (b=1) with table exchange_partition_test_1
PREHOOK: type: ALTERTABLE_EXCHANGEPARTITION
POSTHOOK: query: -- execute alter table exchange partition to add data to exchange_partition_test_2 (this should fail)
explain authorization alter table exchange_partition_test_2 exchange partition (b=1) with table exchange_partition_test_1
POSTHOOK: type: ALTERTABLE_EXCHANGEPARTITION
INPUTS:
default@exchange_partition_test_1
OUTPUTS:
default@exchange_partition_test_2
CURRENT_USER:
user2
OPERATION:
ALTERTABLE_EXCHANGEPARTITION
AUTHORIZATION_FAILURES:
Permission denied: Principal [name=user2, type=USER] does not have following privileges for operation ALTERTABLE_EXCHANGEPARTITION [[SELECT, DELETE] on Object [type=TABLE_OR_VIEW, name=default.exchange_partition_test_1]]
FAILED: HiveAccessControlException Permission denied: Principal [name=user2, type=USER] does not have following privileges for operation ALTERTABLE_EXCHANGEPARTITION [[SELECT, DELETE] on Object [type=TABLE_OR_VIEW, name=default.exchange_partition_test_1]]