我已经使用Active Directory为Apache Storm设置了Kerberos身份验证。 在kerberos设置之后,主管和Nimbus守护进程正常运行。 在storm.yaml文件中添加以下行:
ui.filter: "org.apache.hadoop.security.authentication.server.AuthenticationFilter"
ui.filter.params : {‘type’: ‘kerberos’,
‘kerberos.principal’: ‘HTTP/ui.host.abc.com@XYZ.COM’,
‘kerberos.keytab’: ‘/etc/security/keytabs/HTTP.keytab’,
‘kerberos.name.rules’: ‘DEFAULT’}
在日志中收到以下错误:
Failed to login as [HTTP@DOMAIN.COM]
javax.security.auth.login.LoginException: No key to store
org.apache.hadoop.security.authentication.client.AuthenticationException:
javax.security.auth.login.LoginException: No key to store
我检查了HTTP.keytab。权限是正确的,并且对于有效的主体,它不是空的。
我甚至可以在机器上使用HTTP用户进行ssh登录。
没有适当的文档证明Kerberos与Storm一起讨论这个问题。任何帮助将不胜感激。
答案 0 :(得分:0)
原来这是由于一个错字。 不得不在主要占位符中放置HTTP / DOMAIN.COM代替HTTP@DOMAIN.COM。