(1)先下载工具
https://yvioo.lanzn.com/isBg42j0fu7e
(2)配置工具环境变量,不配置也有默认路径
变量名:KRB5_CONFIG
变量值: 这个就是Kerberos认证给的krb5.conf文件 这边重命名改成 krb5.ini

变量名:KRB5CCNAME
变量值:这个就是Kerberos认证通过后会生成一个缓存文件 可以和上面krb5.ini一个路径 名字就叫krb5.cache
(3)配置hosts文件
接着打开本地hosts文件,把给到的对应的ip域名映射加进去,同时确保本地网络是通的
默认是:C:\Windows\System32\drivers\etc 在这个底下
(4)修改krb5.ini文件
[libdefaults]
#renew_lifetime = 7d
forwardable = true
default_realm = BACK.HADOOP.COM #改成自己的
ticket_lifetime = 24h
dns_lookup_realm = false
dns_lookup_kdc = false
#default_tgs_enctypes = aes
#default_tkt_enctypes = aes
[logging]
default = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
kdc = FILE:/var/log/krb5kdc.log
[realms]
HADOOP.COM = {
admin_server = kdp-mtest-hadoop101 #改成自己的
kdc = kdp-mtest-hadoop101 #改成自己的
}
(5)准备票据
把自己的票据拷贝到你想放置的目录

(6)进行Kerberos认证
然后执行命令先进行认证,命令行打开窗口执行 (这是伪命令,根据自己实际的来)
"C:\Program Files\MIT\Kerberos\bin\kinit" -k -t hive.service.keytab hive/kdp-mtest-hadoop102@BACK_HADOOP.COM
说明:
C:\Program Files\MIT\Kerberos\bin\kinit : 这个就是一个安装包安装的默认路径 如果没有修改 默认就是这个路径 如果改了 选择自己的目录
hive.service.keytab :这个就是Kerberos认证的keytab文件
hive/kdp-mtest-hadoop102@BACK_HADOOP.COM :这个就是给到的认证实体
通过认证后会在kerberos页面上看到

(7)datagrip连接hive

-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf=C:/tools/kerberos/krb5.ini
-Dsun.security.krb5.debug=true
(8)jdbc url
jdbc:hive2://kdp-mtest-hadoop102:10000/;principal=hive/kdp-mtest-hadoop102@BACK_HADOOP.COM;auth=kerberos

DataGrip 可以通过 JAAS 配置文件 实现完全自动认证,不需要手动 kinit:
1. 创建 JAAS 配置文件 (如 C:\tools\kerberos\jgss.auth):
com.sun.security.jgss.initiate {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
useTicketCache=false
keyTab="C:/tools/kerberos/hive.service.keytab"
principal="hive/kdp-mtest-hadoop102@BACK_HADOOP.COM"
doNotPrompt=true
debug=true;
};
2. 在 DataGrip 的 VM Options 中配置
-Djava.security.auth.login.config=C:/tools/kerberos/jgss.auth