[
https://issues.apache.org/jira/browse/HBASE-5498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ted Yu resolved HBASE-5498.
---------------------------
Resolution: Fixed
Release Note:
This feature adds a new optional configuration parameter:
hbase.bulkload.staging.dir
This defines the path on DFS that HBase will use to create random/secret
directories under.
The default location is /tmp/hbase-staging
was:
This feature adds a new optional configuration parameter:
hbase.bulkload.staging.dir
This defines the path on DFS that HBase will use to create random/secret
directories under.
Hadoop Flags: Reviewed
> Secure Bulk Load
> ----------------
>
> Key: HBASE-5498
> URL: https://issues.apache.org/jira/browse/HBASE-5498
> Project: HBase
> Issue Type: Improvement
> Components: security
> Reporter: Francis Liu
> Assignee: Francis Liu
> Fix For: 0.96.0, 0.94.5
>
> Attachments: HBASE-5498_94_2.patch, HBASE-5498_94_3.patch,
> HBASE-5498_94_3.patch, HBASE-5498_94.patch, HBASE-5498_94.patch,
> HBASE-5498_draft_94.patch, HBASE-5498_draft.patch, HBASE-5498_trunk_2.patch,
> HBASE-5498_trunk_2.patch, HBASE-5498_trunk_3.patch, HBASE-5498_trunk_4.patch,
> HBASE-5498_trunk_5.patch, HBASE-5498_trunk.patch
>
>
> Design doc:
> https://cwiki.apache.org/confluence/display/HCATALOG/HBase+Secure+Bulk+Load
> Short summary:
> Security as it stands does not cover the bulkLoadHFiles() feature. Users
> calling this method will bypass ACLs. Also loading is made more cumbersome in
> a secure setting because of hdfs privileges. bulkLoadHFiles() moves the data
> from user's directory to the hbase directory, which would require certain
> write access privileges set.
> Our solution is to create a coprocessor which makes use of AuthManager to
> verify if a user has write access to the table. If so, launches a MR job as
> the hbase user to do the importing (ie rewrite from text to hfiles). One
> tricky part this job will have to do is impersonate the calling user when
> reading the input files. We can do this by expecting the user to pass an hdfs
> delegation token as part of the secureBulkLoad() coprocessor call and extend
> an inputformat to make use of that token. The output is written to a
> temporary directory accessible only by hbase and then bulkloadHFiles() is
> called.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira