[ https://issues.apache.org/jira/browse/HADOOP-13805?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15823075#comment-15823075 ]
Yongjun Zhang commented on HADOOP-13805: ---------------------------------------- I have been looking at rev006 quite a bit, it looks good to me, except for two things: 1. The change to constructor {code} UserGroupInformation(Subject subject) { this(subject, true); } {code} now changed the original behavior, even though it's really fixing a wrong behavior, it's an incompatible change. Other application use this API may break. Hi [~tucu00], thanks for reporting the issue and review so far. How do you think we should address that? 2. The test suggested by Alejandro at https://issues.apache.org/jira/browse/HADOOP-13805?focusedCommentId=15653489&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15653489 is better included with the patch. Thanks. > UGI.getCurrentUser() fails if user does not have a keytab associated > -------------------------------------------------------------------- > > Key: HADOOP-13805 > URL: https://issues.apache.org/jira/browse/HADOOP-13805 > Project: Hadoop Common > Issue Type: Bug > Components: security > Affects Versions: 2.8.0, 2.9.0, 3.0.0-alpha2 > Reporter: Alejandro Abdelnur > Assignee: Xiao Chen > Attachments: HADOOP-13805.006.patch, HADOOP-13805.01.patch, > HADOOP-13805.02.patch, HADOOP-13805.03.patch, HADOOP-13805.04.patch, > HADOOP-13805.05.patch > > > HADOOP-13558 intention was to avoid UGI from trying to renew the TGT when the > UGI is created from an existing Subject as in that case the keytab is not > 'own' by UGI but by the creator of the Subject. > In HADOOP-13558 we introduced a new private UGI constructor > {{UserGroupInformation(Subject subject, final boolean externalKeyTab)}} and > we use with TRUE only when doing a {{UGI.loginUserFromSubject()}}. > The problem is, when we call {{UGI.getCurrentUser()}}, and UGI was created > via a Subject (via the {{UGI.loginUserFromSubject()}} method), we call {{new > UserGroupInformation(subject)}} which will delegate to > {{UserGroupInformation(Subject subject, final boolean externalKeyTab)}} and > that will use externalKeyTab == *FALSE*. > Then the UGI returned by {{UGI.getCurrentUser()}} will attempt to login using > a non-existing keytab if the TGT expired. > This problem is experienced in {{KMSClientProvider}} when used by the HDFS > filesystem client accessing an an encryption zone. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org