[
https://issues.apache.org/jira/browse/ACCUMULO-3513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14294629#comment-14294629
]
Josh Elser commented on ACCUMULO-3513:
--------------------------------------
bq. Without the whitelist, and only the delegation token, all we can do is
trust that the MapReduce layer authenticated the client at some point, for some
purpose. With the whitelist, we can trust that we've vetted the MapReduce layer
to function properly. If we already have that degree of trust, the delegation
token is kinda moot.
I'm not sure you understand how the delegation token would work. The client
would need to communicate with an Accumulo process to obtain some shared secret
between Accumulo and that client. So, in addition to knowing that YARN is
vetting that the "real" user is running the tasks on YARN, we know that the
"real" user is going to be communicating with us using the shared secret we
agreed upon.
When YARN actually runs the tasks for us, as that unix user acct tied to the
client, that yarn task will have the shared secret (that we trust YARN to keep
safe when it leaves the client's possession and go into the cluster), we let
Accumulo RPCs happen using the shared secret instead of the KRB credentials.
The YARN task isn't connecting to Accumulo with it's principals because, again,
it's not running as a {{yarn}} user, but the "real" user".
So, no. I say again that the delegation token is not moot :)
> Ensure MapReduce functionality with Kerberos enabled
> ----------------------------------------------------
>
> Key: ACCUMULO-3513
> URL: https://issues.apache.org/jira/browse/ACCUMULO-3513
> Project: Accumulo
> Issue Type: Bug
> Components: client
> Reporter: Josh Elser
> Assignee: Josh Elser
> Priority: Blocker
> Fix For: 1.7.0
>
>
> I talked to [~devaraj] today about MapReduce support running on secure Hadoop
> to help get a picture about what extra might be needed to make this work.
> Generally, in Hadoop and HBase, the client must have valid credentials to
> submit a job, then the notion of delegation tokens is used by for further
> communication since the servers do not have access to the client's sensitive
> information. A centralized service manages creation of a delegation token
> which is a record which contains certain information (such as the submitting
> user name) necessary to securely identify the holder of the delegation token.
> The general idea is that we would need to build support into the master to
> manage delegation tokens to node managers to acquire and use to run jobs.
> Hadoop and HBase both contain code which implements this general idea, but we
> will need to apply them Accumulo and verify that it is M/R jobs still work on
> a kerberized environment.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)