0


DBeaver连接含有Kerberos认证的集群的Hive表

文章目录

前言

   以DBeaver为例,连接含有Kerberos认证的集群的Hive表


1. 配置Kerberos客户端环境

1.1 下载MIT Kerberos for Windows

官网下载
在这里插入图片描述

1.2 拷贝krb5.conf

  将KDC Server服务器上/etc/krb5.conf文件中的部分内容,拷贝到krb5.ini(ps.博主250没有去掉linux文件路径)

# Configuration snippets may be placed in this directory as well
#includedir /etc/krb5.conf.d/[logging]
 #default=FILE:/var/log/krb5libs.log
 #kdc =FILE:/var/log/krb5kdc.log
 #admin_server =FILE:/var/log/kadmind.log

[libdefaults]
 dns_lookup_realm =false
 ticket_lifetime =24h
 # ticket_lifetime =2m
 renew_lifetime =7d
 forwardable =true
 rdns =false
 #pkinit_anchors =FILE:/etc/pki/tls/certs/ca-bundle.crt
 default_realm =BIGDATA.HEX.COM
 #default_ccache_name =KEYRING:persistent:%{uid}[realms]BIGDATA.HEX.COM={
  kdc = 自己的服务ip
  admin_server = 自己的服务ip
 }[domain_realm].example.com =BIGDATA.HEX.COM
 example.com =BIGDATA.HEX.COM

1.3 配置环境变量

变量名:KRB5_CONFIG,变量值:D:\software\kerberos\etc\krb5.ini
变量名:KRB5CCNAME,变量值:D:\software\kerberos\temp\krb5cache
KRB5CCNAME的路径默认是不存在的,因此需要创建temp文件夹,krb5cache文件则不需要创建
配置完环境变量后,重启计算机使其生效

此时执行kinit认证报错

在这里插入图片描述
原来jdk自带一个kinit命令,在java的环境变量前加入Kerberos环境
在这里插入图片描述


1.4 认证

在可视化界面认证测试一下
在这里插入图片描述
注意:
用DBeaver连接Hive时,首先用kinit 命令进行缓存票据
在这里插入图片描述
在这里插入图片描述

2. DBeaver连接hive

2.1 配置dbeaver.ini

  在DBeaver安装路径下找到dbeaver.ini,添加

-Djavax.security.auth.useSubjectCredsOnly=false
-Djava.security.krb5.conf=D:\software\kerberos\etc\krb5.conf
-Dsun.security.krb5.debug=true

在这里插入图片描述

(ps.2个文件完全一样,只是本人强迫症)

2.2 连接hive

在这里插入图片描述
jdbc url:

jdbc:hive2://服务ip:10000/;principal=hive/[email protected]

在这里插入图片描述


本文转载自: https://blog.csdn.net/javahelpyou/article/details/139023935
版权归原作者 但行益事莫问前程 所有, 如有侵权,请联系我们删除。

“DBeaver连接含有Kerberos认证的集群的Hive表”的评论:

还没有评论