Kerberos 认证

<< Click to Display Table of Contents >>

当前位置:  数据准备 > 数据源 > SQL数据源 

Kerberos 认证

复制链接

1.Kerberos简介

Kerbero是一种计算机网络授权协议,用来在非安全网络中,对个人通信以安全的手段进行身份认证。

Kerberos 将传输密码(Password)改为传输凭证( Principal )和秘钥(Keytab), 秘钥是经过加密并且具有一定有效时长的,避免本地保存密码和在网络上传输密码。

2.数据源页面 Kerberos 认证需要的配置信息

对于FUSIONINSIGHT HD、HIVE、SPARK、IMPALA、HBASE、PRESTO、TRANSWARP、TBDS、TBDS OLAP数据源,支持两种配置Kerberos认证,在数据源配置界面如图:

Data_Kerberos

选择Kerberos认证后的配置界面如下图:

dbshot16

具体的配置属性获取方式和含义如下:

属性名称

说明

填写方式和用途

秘钥文件路径

必填项,相当于是password,是一个keytab后缀的文件的路径。

使用KDC主机生成,用于和KDC主机通信。

Krb5文件路径

非必填项,krb5文件配置了默认Realm,KDC主机信息等。

如果该项没有填写。永洪 BI执行以下检查。

1)永洪BI检查{JDK/JRE安装目录}/lib/security/krb5.conf文件是否存在。

存在,永洪BI会使用该文件。

不存在,执行步骤2)。

2)永洪BI检查操作系统目录下的krb5配置文件,不同的操作系统下krb5配置文件路径不同。

Linux   : /etc/krb5.conf 文件

Windows:   C:\windows\system32\krb5.ini

存在,永洪BI会使用该文件。

不存在,永洪BI会提示 Cannot locate default realm。

Jaas文件路径

非必填项,建议填写。永洪BI会根据该文件的配置信息从KDC主机获取用于和Server通信的TGT。

在服务器新建文件jaas.conf,并输入以下内容。最后将文件路径填写到数据源“Jaas文件路径”项。

Client {

 com.sun.security.auth.module.Krb5LoginModule required

 useKeyTab=true

 keyTab="/app/user.keytab"      --同密钥文件路径

 storeKey=true

 useTicketCache=false

 principal="yonghong@HADOOP.COM";   --同用户名

};

如果该项没有填写,永洪BI会使用操作系统缓存的ticket和server进行通信,如果系统没有缓存,永洪BI会提示Unable to obtain Principal Name for authentication。

用户名

必填项,用于永洪BI和KDC主机通信,也就是Kerberos的principal(传输凭证)。

格式为:service/host@realm(或者service@realm)。如果在krb5文件中指定了default_realm,此处可以省略realm,例如 yonghong@HADOOP.COM 可以写为yonghong。