Argus Deeper Integration
Deeper Integration (HBase)
- Pre Champlain
- Hbase Agents supports table, CF, Column level permissions
- Local Permissions not integrated
- Post Champlain
- Integrate local grant/revoke permissions
- New Argus/XA co-processor, no changes in HBase
- Hbase-site.xml
<property>
<name>hbase.coprocessor.master.classes</name>
<value>com.xasecure.authorization.hbase.XaSecureAuthorizationCoprocessor</value> <property>
<name>hbase.coprocessor.region.classes</name>
<value>com.xasecure.authorization.hbase.XaSecureAuthorizationCoprocessor</value>
HBase Grant Revoke
- Command Line Operations
- Permission supported
- Admin (A) / Create © / Write (W) / Read (R)
- Permission supported
- Can be performed at table, CF, column level
grant <user> <permissions>[ <table>[ <column family>[ <column qualifier> ] ] ] # grants permissions
revoke <user> <permissions> [ <table> [ <column family> [ <column qualifier> ] ] ] # revokes permissions
Deeper Integration (Hive)
- Pre Champlain
- XA Secure/Argus uses multiple hooks in Hive
- Not all information necessary to make authorization decision are available in Hive authorizer hooks
- Local Grant/Revoke permission not integrated with Argus
- Storage based authorization only looks at POSIX permissions
hive.security.authorization.manager=com.xasecure.authorization.hive.authorizer.XaSecureAuthorizer
hive.semantic.analyzer.hook=com.xasecure.authorization.hive.hooks.XaSecureSemanticAnalyzerHook
hive.exec.post.hooks=com.xasecure.authorization.hive.hooks.XaSecureHivePostExecuteRunHook
- Champlain Integration
- New plug-in model in Hive to support external authorizers
- All information necessary to make authorization decision are provided to authorizer plug-in
- XASecure/Argus Hive agent registers a single hook with Hive for authorization
- New plug-in model in Hive to support external authorizers
hive.security.authorization.manager=com.xasecure.authorization.hive.authorizer.XaSecureHiveAuthorizerFactory
+ Integrate Grant/Revoke permissions
* New Hive Plugin enables Argus to handle Grant/Revoke permission
* Argus will store Grant/Revoke policy and enforce it, with auditing
* Option to disable Grant/Revoke
* Group/Roles mapped to Groups in Argus Admin
+ Storage Based Authorization
* In SBA, Hive used HDFS permissions for allowing operations
* HDFS Permission Check
- Hive uses RPC to communicate with HDFS and validate permission on HDFS folders
- If Argus is enabled, Hive will use permissions based on Argus policies in HDFS
- Argus can be used for Storage based and regular Hive authorization
Deeper Integration (HDFS)
- Pluggable HDFS authorization is being added (HDFS-6826)
- Argus will replace the JavaAgent based code injection with a custom authorization plugin
Still in Discussions
Reference www.hortonworks.com