hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Wang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-11341) Add support for root key KMS ACLs
Date Mon, 01 Dec 2014 23:32:12 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-11341?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14230684#comment-14230684

Andrew Wang commented on HADOOP-11341:

Patch looks good, thanks Arun for working on this and Dian for reviewing. One question, do
you think we could rename it to not be "root key ACL"? I think it's kind of confusing with
the root user. Maybe "whitelist key ACL" ? Other ideas welcome.

Otherwise, just some nitty stuff:

* Extra space in "for  KEY_OP"
* typos "ro0t", "privilegaes"
* Would like a bigger config example in the documentation. Also would recommend a paragraph
like the following for the doc, just to expand it out:

It is also possible to configure a "root key" ACL for each operation type. The root key ACL
is a whitelist in addition to the explicit or default per-key ACL. That is, if no per-key
ACL is explicitly set, a user will be granted access if they are present in the default per-key
ACL or the root key ACL. If a per-key ACL is explicitly set, a user will be granted access
if they are present in the per-key ACL or the root key ACL.

> Add support for root key KMS ACLs
> ---------------------------------
>                 Key: HADOOP-11341
>                 URL: https://issues.apache.org/jira/browse/HADOOP-11341
>             Project: Hadoop Common
>          Issue Type: New Feature
>          Components: kms, security
>            Reporter: Arun Suresh
>            Assignee: Arun Suresh
>         Attachments: HADOOP-11341.1.patch, HADOOP-11341.2.patch, HADOOP-11341.3.patch
> As reported by [~dian.fu] :
> Key based ACL in KMS is currently implemented as whitelist. So if I configure as follows
in kms-acl.xml,
> {code}
>  <property>
>     <name>key.acl.testKey.DECRYPT_EEK</name>
>     <value>testUser</value>
>   </property>
> {code}, then only {{testUser}} user can do {{DECRYPT_EEK}} call on key {{testKey}}. If
I want {{yarn}} user can also do {{DECRYPT_EEK}} call on {{testKey}} key, I need add {{yarn}}
user to the above configuration value manually. This means that if I want to configure key
based ACL({{DECRYPT_EEK}}) for {{some key}}, I need also add {{yarn}} user to configuration
{{DECRYPT_EEK}} for that key. As I don't know if {{yarn}} user will later need to do {{DECRYPT_EEK}}
for this key.. This is inconvenient and tricky.
> This can be alleviated by slightly modifying the key ACL logic in KMS first checks if
the user, in this case {{yarn}}, is present in {{key.acl.<key-name>.<OP-name>}}
list. And if not, then also check if the user is present in {{default.key.acl.<OP-name>}}.
If yes, then grant access.. else deny.
> Currently,  {{default.key.acl.<OP-name>}} is consulted only if NO {{key.acl.<key-name>.<OP-name>}}
is specified.

This message was sent by Atlassian JIRA

View raw message