[ 
https://issues.apache.org/jira/browse/HCATALOG-245?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13202752#comment-13202752
 ] 

[email protected] commented on HCATALOG-245:
--------------------------------------------------------


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3778/
-----------------------------------------------------------

Review request for Ashutosh Chauhan, Sushanth Sowmyan and enis.


Summary
-------

Attaching initial version of the patch to add storage handler specific 
authorization provider support as discussed in the parent issue.

Some of the patch notes:

Added a DelegationAuthorizationProvider which delegates to either HDFS 
authorizationprovider or the storage specific one.
HDFSAuthorization provider checks for access level for the given path as 
discussed in 
https://cwiki.apache.org/confluence/display/HCATALOG/Hcat+Security+Design. 
Simply, if you want to alter/create an object at a specific location, you have 
to have read/write access to that location. This just extends what is already 
enforced by AuthUtils.
the authorization provider is invoked from the semantic analyzer, but uses the 
already parsed statement definitions from Hive. Hive invokes the auth provider 
from Driver.doAuthorization(). However, most of the privileges in HiveOperation 
are not sufficient, and the fact that dbs, tables and partitions can specify 
custom locations means that we cannot use pure Hive's enforcement of auth 
provider implementation.
This patch does not yet include the auth provider for secure HBase. I'll do 
that in the next version. In the meantime, reviews for design are more than 
welcome.
The patch includes extensive unit tests, mostly in CLI, so the expected 
behavior can be understood from the unit test.


This addresses bug HCATALOG-245.
    https://issues.apache.org/jira/browse/HCATALOG-245


Diffs
-----

  trunk/src/java/org/apache/hcatalog/cli/SemanticAnalysis/CreateTableHook.java 
1241601 
  
trunk/src/java/org/apache/hcatalog/cli/SemanticAnalysis/HCatSemanticAnalyzer.java
 1241601 
  
trunk/src/java/org/apache/hcatalog/cli/SemanticAnalysis/HCatSemanticAnalyzerBase.java
 PRE-CREATION 
  trunk/src/java/org/apache/hcatalog/common/AuthUtils.java 1241601 
  
trunk/src/java/org/apache/hcatalog/security/DelegationAuthorizationProvider.java
 PRE-CREATION 
  trunk/src/java/org/apache/hcatalog/security/HdfsAuthorizationProvider.java 
PRE-CREATION 
  
trunk/src/test/org/apache/hcatalog/security/TestHdfsAuthorizationProvider.java 
PRE-CREATION 

Diff: https://reviews.apache.org/r/3778/diff


Testing
-------


Thanks,

Alan


                
> StorageHandler authorization providers 
> ---------------------------------------
>
>                 Key: HCATALOG-245
>                 URL: https://issues.apache.org/jira/browse/HCATALOG-245
>             Project: HCatalog
>          Issue Type: Sub-task
>            Reporter: Enis Soztutar
>            Assignee: Enis Soztutar
>         Attachments: hcat-auth_v1.patch
>
>
> As per the design in the parent issue, we will delegate the authorization 
> checks to the storage handler (hdfs is considered as a storage handler as 
> well). This jira will introduce HiveAuthorizationProviders for hbase + hdfs.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to