You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Lantao Jin (JIRA)" <ji...@apache.org> on 2017/08/03 07:18:00 UTC
[jira] [Comment Edited] (HADOOP-14708) FsckServlet can not create
SaslRpcClient with auth KERBEROS_SSL
[ https://issues.apache.org/jira/browse/HADOOP-14708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16108653#comment-16108653 ]
Lantao Jin edited comment on HADOOP-14708 at 8/3/17 7:17 AM:
-------------------------------------------------------------
Attach some logs. I think it can be fix by two options:
# Change the enum {{AuthenticationMethod}} value KERBEROS_SSL(null) to KERBEROS_SSL(AuthMethod.KERBEROS)
# relax the condition in createSaslClient() like
{code}
if (ugi.getRealAuthenticationMethod().getAuthMethod() !=
AuthMethod.KERBEROS && ugi.getRealAuthenticationMethod() !=
AuthenticationMethod.KERBEROS_SSL ) {
return null; // client isn't using kerberos
}
{code}
If any option is ok, I can attach the patch file.
was (Author: cltlfcjin):
Attach some logs. I think it can be fix by two options:
# Change the enum {{AuthenticationMethod}} value KERBEROS_SSL(null) to KERBEROS_SSL(AuthMethod.KERBEROS)
# relax the condition in createSaslClient() like
{code}
if (ugi.getRealAuthenticationMethod().getAuthMethod() !=
AuthMethod.KERBEROS || ugi.getRealAuthenticationMethod() !=
AuthenticationMethod.KERBEROS_SSL ) {
return null; // client isn't using kerberos
}
{code}
If any option is ok, I can attach the patch file.
> FsckServlet can not create SaslRpcClient with auth KERBEROS_SSL
> ---------------------------------------------------------------
>
> Key: HADOOP-14708
> URL: https://issues.apache.org/jira/browse/HADOOP-14708
> Project: Hadoop Common
> Issue Type: Bug
> Components: security
> Affects Versions: 2.7.3, 2.8.1, 3.0.0-alpha3
> Reporter: Lantao Jin
> Attachments: FSCK.log
>
>
> FSCK started by xx (auth:KERBEROS_SSL) failed with exception msg "fsck encountered internal errors!"
> FSCK use FSCKServlet to submit RPC to NameNode, it use {{KERBEROS_SSL}} as its {{AuthenticationMethod}} in {{JspHelper.java}}
> {code}
> /** Same as getUGI(context, request, conf, KERBEROS_SSL, true). */
> public static UserGroupInformation getUGI(ServletContext context,
> HttpServletRequest request, Configuration conf) throws IOException {
> return getUGI(context, request, conf, AuthenticationMethod.KERBEROS_SSL, true);
> }
> {code}
> But when setup SaslConnection with server, KERBEROS_SSL will failed to create SaslClient instance. See {{SaslRpcClient.java}}
> {code}
> private SaslClient createSaslClient(SaslAuth authType)
> throws SaslException, IOException {
> ....
> case KERBEROS: {
> if (ugi.getRealAuthenticationMethod().getAuthMethod() !=
> AuthMethod.KERBEROS) {
> return null; // client isn't using kerberos
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org