3 回答

TA貢獻1946條經驗 獲得超4個贊
忘記Hadoop UGI:JDBC驅動程序只需要原始的JAAS配置就可以動態地(useKeyTab升高和useTicketCache降低)創建Kerberos票證。
系統屬性
java.security.krb5.conf =>(可選)非默認的Kerberos conf
java.security.auth.login.config => JAAS配置文件
javax.security.auth.useSubjectCredsOnly =>必須強制為“ false” (某些Java版本中的默認設置已更改,duh)
示例JAAS conf文件,Impala / Hive Cloudera驅動程序,
此處帶有Windows路徑(Java樣式表示法)。
Client {
com.sun.security.auth.module.Krb5LoginModule
required
useTicketCache=false
doNotPrompt=true
useKeyTab=true
keyTab="file:C:/blah/blah/dummy.keytab"
principal="[email protected]"
debug=false;
};
示例JAAS conf文件,Apache Hive驅動程序
只需將部分名稱從更改Client為com.sun.security.jgss.krb5.initiate
PS:您可以將多個部分填充在同一個conf文件中。這意味著您可以定義“全局” conf,并將其與具有一致設置的多個工具,驅動程序和庫一起使用。
調試
sun.security.krb5.debug =>設置為“ true”
java.security.debug=>設置為“ gssloginconfig,配置文件,configparser,logincontext”
添加回答
舉報