hiveserver2 with kerberos authentication

Kerberos协议:

Kerberos协议主要用于计算机网络的身份鉴别(Authentication), 其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-granting ticket)访问多个服务,即SSO(Single Sign On)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。

 

Kerberos协议分为两个部分:

1 . Client向KDC发送自己的身份信息,KDC从Ticket Granting Service得到TGT(ticket-granting ticket), 并用协议开始前Client与KDC之间的密钥将TGT加密回复给Client。

此时只有真正的Client才能利用它与KDC之间的密钥将加密后的TGT解密,从而获得TGT。

(此过程避免了Client直接向KDC发送密码,以求通过验证的不安全方式)

2. Client利用之前获得的TGT向KDC请求其他Service的Ticket,从而通过其他Service的身份鉴别。

摘自:http://idior.cnblogs.com/archive/2006/03/20/354027.html

如果你在node上使用beeline进行连接,则需要先kinit操作,然后执行即可。

如果要使用java application通过jdbc来操作,首先需要ktutil来生成keytab密钥文件,然后利用这个密钥文件去请求ticket才能够进行下面的连接。

具体可以参照网络资料。http://www-304.ibm.com/support/knowledgecenter/SSPT3X_3.0.0/com.ibm.swg.im.infosphere.biginsights.admin.doc/doc/kerberos_hive.html

keytab的生成与使用:

https://kb.iu.edu/d/aumh

ktutil
 ktutil:  addent -password -p username@ADS.IU.EDU -k 1 -e rc4-hmac
 Password for username@ADS.IU.EDU: [enter your password]
 ktutil:  addent -password -p username@ADS.IU.EDU -k 1 -e aes256-cts
 Password for username@ADS.IU.EDU: [enter your password]
 ktutil:  wkt username.keytab
 ktutil:  quit

转载于:https://www.cnblogs.com/huaxiaoyao/p/4499283.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值