公司动态
datagrip连接带有kerberos认证的hive
1先下载工具https://yvioo.lanzn.com/isBg42j0fu7e2配置工具环境变量不配置也有默认路径变量名KRB5_CONFIG变量值 这个就是Kerberos认证给的krb5.conf文件 这边重命名改成 krb5.ini变量名KRB5CCNAME变量值这个就是Kerberos认证通过后会生成一个缓存文件 可以和上面krb5.ini一个路径 名字就叫krb5.cache3配置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-hadoop102BACK_HADOOP.COM说明C:\Program Files\MIT\Kerberos\bin\kinit 这个就是一个安装包安装的默认路径 如果没有修改 默认就是这个路径 如果改了 选择自己的目录hive.service.keytab 这个就是Kerberos认证的keytab文件hive/kdp-mtest-hadoop102BACK_HADOOP.COM 这个就是给到的认证实体通过认证后会在kerberos页面上看到7datagrip连接hive-Djavax.security.auth.useSubjectCredsOnlyfalse -Djava.security.krb5.confC:/tools/kerberos/krb5.ini -Dsun.security.krb5.debugtrue8jdbc urljdbc:hive2://kdp-mtest-hadoop102:10000/;principalhive/kdp-mtest-hadoop102BACK_HADOOP.COM;authkerberosDataGrip 可以通过JAAS 配置文件实现完全自动认证不需要手动 kinit1. 创建 JAAS 配置文件如C:\tools\kerberos\jgss.authcom.sun.security.jgss.initiate { com.sun.security.auth.module.Krb5LoginModule required useKeyTabtrue useTicketCachefalse keyTabC:/tools/kerberos/hive.service.keytab principalhive/kdp-mtest-hadoop102BACK_HADOOP.COM doNotPrompttrue debugtrue; };2. 在 DataGrip 的 VM Options 中配置-Djava.security.auth.login.configC:/tools/kerberos/jgss.auth