0
我拥有Kerberos并启用了Hadoop集群。我需要使用Java代码执行HDFS操作。使用Java对启用了Kerberos的Hadoop集群进行身份验证
我有keytab
文件和用户名。
有人可以请建议我如何使用Java代码验证Kerberos?
谢谢。
我拥有Kerberos并启用了Hadoop集群。我需要使用Java代码执行HDFS操作。使用Java对启用了Kerberos的Hadoop集群进行身份验证
我有keytab
文件和用户名。
有人可以请建议我如何使用Java代码验证Kerberos?
谢谢。
如果您只想使用HDFS Java API进行短暂连接,那么UserGroupInformation
有一个loginUserFromKeytab
方法。
如果您想要一个持久的连接(即,比初始Kerberos TGT的生命周期更长),请查看that post。
如果您对Kerberos 的黑暗面感兴趣(嗯,没有其他方面)然后看看"Madness beyond the Gate"在线书 - 在您自担风险。
~~~~~~
BTW存在于Java API的一种替代方案:在WebHDFS REST服务。但在Windows上,您仍然需要一些Java代码来创建Kerberos TGT (使用GSSAPI即Linux方式,而不是SSPI,即Microsoft方式!!!),运行SPNEGO初始认证并检索委托令牌。此时,任何HTTPS库都将能够使用该令牌处理文件操作。
谢谢参孙工作 –
如果答案是有帮助的,那么你可以将其标记为“接受”:-) –