[
https://issues.apache.org/jira/browse/HBASE-16724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15548399#comment-15548399
]
Pankaj Kumar commented on HBASE-16724:
--------------------------------------
[~ashish singhi], How SnapshotOwner will be the TableOwner when table doesn't
exist?
And I think below condition is wrong in AccessController.preCloneSnapshot(),
snapshot can be cloned to any table name. It shouldn't be the same table name
as snapshot was taken.
{code}
hTableDescriptor.getNameAsString().equals(snapshot.getTable())
{code}
For ACL matrix ,
SnapshotOwner & NS(AC)
WDYT, please provide your opinion.
> Snapshot owner can't clone
> --------------------------
>
> Key: HBASE-16724
> URL: https://issues.apache.org/jira/browse/HBASE-16724
> Project: HBase
> Issue Type: Bug
> Components: snapshots
> Affects Versions: 2.0.0
> Reporter: Pankaj Kumar
> Assignee: Pankaj Kumar
> Attachments: HBASE-16724-V2.patch, HBASE-16724.patch
>
>
> Currently only Global admin has the access of cloning a snapshot.
> In AccessController,
> {code}
> @Override
> public void preCloneSnapshot(final
> ObserverContext<MasterCoprocessorEnvironment> ctx,
> final SnapshotDescription snapshot, final HTableDescriptor
> hTableDescriptor)
> throws IOException {
> requirePermission(getActiveUser(ctx), "cloneSnapshot " +
> snapshot.getName(), Action.ADMIN);
> }
> {code}
> Snapshot owner should be able to clone it, need to add a check like,
> {code}
> SnapshotDescriptionUtils.isSnapshotOwner(snapshot, user)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)