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

Sanjay Radia commented on HADOOP-9392:
--------------------------------------

Thanks for the Jira and the slides on what you are proposing.
{quote}
There is also no consistent delegation model. HDFS has a simple delegation 
capability, and only Oozie can take limited advantage of it. We will implement 
a common token based authentication framework to decouple internal user and 
service authentication from external mechanisms used to support it (like 
Kerberos)
{quote}
I am puzzled by the above statement. Hadoop has delegation tokens and a trust 
model. For the largest part we use delegation tokens (e.g. MR job client gets 
HDFS delegation tokens etc) so that the job can run as the user that submitted 
the job. Further in some cases we use trusted proxies like Ozzie (but this can 
be any trusted service, not just Oozie), to access system services as specific 
users. The delegation tokens and the trusted proxies are two independent 
mechanisms. So I feel the statements in the quoted block are not correct or 
perhaps you are using the term "delegation" in a different sense. Details of 
the Hadoop delegation tokens are in the following very detailed paper on Hadoop 
security (see 
http://hortonworks.com/wp-content/uploads/2011/10/security-design_withCover-1.pdf).

You also state  "We will implement a common token based authentication 
framework to decouple internal user and service authentication from external 
mechanisms used to support it (like Kerberos)" Note the at internal Hadoop 
tokens are separate from the Kerberos tokens - indeed they are nicely decoupled 
- the problem, IMHO,  is not the decoupling but other issues. Another issue is  
the authentication implementation which has a burnt-in notion of supporting 
UGI, Keberos or the delegation tokens for authentication. As Daryn pointed out 
this implementation needs to change so that the authentication mechanism is 
pluggable. This jira, I believe, is proposing much much more than making this 
implementation pluggable. 


Don't get me wrong, I am not criticizing the  Jira but merely trying to 
understand some of the statements in the description and the slides you have 
posted.  I do agree that we need to allow other forms of authentication besides 
Kerberos/ActiveDir. I also agree that attributes like group membership should 
have been part of the Hadoop delegation tokens to avoid back calls which are 
not feasible in cloud environments. Do you have a more detailed design besides 
the slides that you have uploaded to this jira?  I would like to get the next 
level of details. Your comments in this jira do give some more details but it 
would be good to put them in a design document. Further, I suspect you are 
trying to replace the Hadoop delegation tokens - i don't disagree with that but 
would like to understand the why and how   from your perspective.

Would this be an accurate description of this Jira: "Single sign on for 
non-kerberos environments using tokens". Hadoop does support "single sign on" 
for kerberos/activeDir environments; of course that is not good enough since 
many customers do not have Kerberos/ActiveDir. 
                
> Token based authentication and Single Sign On
> ---------------------------------------------
>
>                 Key: HADOOP-9392
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9392
>             Project: Hadoop Common
>          Issue Type: New Feature
>          Components: security
>            Reporter: Kai Zheng
>            Assignee: Kai Zheng
>             Fix For: 3.0.0
>
>         Attachments: token-based-authn-plus-sso.pdf
>
>
> This is an umbrella entry for one of project Rhino’s topic, for details of 
> project Rhino, please refer to 
> https://github.com/intel-hadoop/project-rhino/. The major goal for this entry 
> as described in project Rhino was 
>  
> “Core, HDFS, ZooKeeper, and HBase currently support Kerberos authentication 
> at the RPC layer, via SASL. However this does not provide valuable attributes 
> such as group membership, classification level, organizational identity, or 
> support for user defined attributes. Hadoop components must interrogate 
> external resources for discovering these attributes and at scale this is 
> problematic. There is also no consistent delegation model. HDFS has a simple 
> delegation capability, and only Oozie can take limited advantage of it. We 
> will implement a common token based authentication framework to decouple 
> internal user and service authentication from external mechanisms used to 
> support it (like Kerberos)”
>  
> We’d like to start our work from Hadoop-Common and try to provide common 
> facilities by extending existing authentication framework which support:
> 1.    Pluggable token provider interface 
> 2.    Pluggable token verification protocol and interface
> 3.    Security mechanism to distribute secrets in cluster nodes
> 4.    Delegation model of user authentication

--
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

Reply via email to