我需要用不同的领域验证两个不同的hdfs集群。但当我示例化另一个ugi对象时,只有一个可以正常工作,它给出了错误
UserGroupInformation.setConfiguration(conf);
UserGroupInformation.loginUserFromKeytab(Principal , keytab path);
当我只有一个服务主体名称时,它工作得很好
但当我有多个spn有不同的领域,它给出了一个错误
我的用户1和用户2属于不同的领域
spn1-“hdfs/user1@alice..com“spn2-”hdfs/user2@bob..com"
原因:javax.security.auth.login.loginexception:java.lang.illegalargumentexception:非法主体名称org.apache.hadoop.security.authentication.util.kerberosname$nomatchingrule:未应用规则
但在这两种情况下都有默认规则
我在这篇文章中也听说了多个ugihttps://bryanbende.com/development/2016/03/20/learning-kerberos-and-ugi
使用多个ugi
UserGroupInformation.loginUserFromKeytabAndReturnUGI(user, keytab);
但它也给出了同样的错误我如何实现这些
暂无答案!
目前还没有任何答案,快来回答吧!