Sai Hemanth Gantasala created HIVE-26799:
--------------------------------------------

             Summary: Make authorizations on custom UDFs involved in 
tables/view configurable.
                 Key: HIVE-26799
                 URL: https://issues.apache.org/jira/browse/HIVE-26799
             Project: Hive
          Issue Type: New Feature
          Components: HiveServer2, Security
    Affects Versions: 4.0.0-alpha-2
            Reporter: Sai Hemanth Gantasala
            Assignee: Sai Hemanth Gantasala


When Hive is using Ranger/Sentry as an authorization service, consider the 
following scenario.

 
{code:java}
> create table test_udf(st string);   // privileged user operation 
> create function Udf_UPPER as 'openkb.hive.udf.MyUpper' using jar 
> 'hdfs:///tmp/MyUpperUDF-1.0.0.jar'; // privileged user operation
> create view v1_udf as select udf_upper(st) from test_udf; // privileged user 
> operation
//unprivileged user test_user is given select permissions on view v1_udf
> select * from v1_udf;  {code}
It is expected that test_user needs to have select privilege on v1_udf and 
select permissions on udf_upper custom UDF in order to do a select query on 
view. 

 

 

This patch introduces a configuration 
"hive.security.authorization.functions.in.view"=false which disables 
authorization on views associated with views/tables during the select query. In 
this mode, only UDFs explicitly stated in the query would still be authorized 
as it is currently.

The reason for making these custom UDFs associated with view/tables 
authorizable is that currently, test_user will need to be granted select 
permissions on the custom udf. and the test_user can use this UDF and query 
against any other table, which is a security concern.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to