hbase asynchbase 异步API kerberos认证

hbase asynchbase 异步API 调用 ,如果需要kerberos认证,下面是必须的步骤,其实和opentsdb kerberos认证是一个道理。
这句很重要
KerberosClientAuthProvider   authProvider = new KerberosClientAuthProvider(hbaseClient);
,是保持 ticket 24小时刷新的。
下面是代码:

HBaseClient hbaseClient = new HBaseClient(zookeeper);

激活了kerberos需要:
 System.setProperty("java.security.auth.login.config", "D:/kbs/jaas.conf");
System.setProperty("zookeeper.sasl.client", "false");
//下面行只在本地打开
System.setProperty("java.security.krb5.conf", "D:/kbs/krb5.conf");

org.hbase.async.Config asyncConfig = new org.hbase.async.Config();
asyncConfig.overrideConfig("hbase.zookeeper.quorum", zookeeper);
asyncConfig.overrideConfig("hbase.security.auth.enable", "true");
asyncConfig.overrideConfig("hbase.security.authentication", "kerberos");
asyncConfig.overrideConfig("hbase.sasl.clientconfig", "Client");
asyncConfig.overrideConfig("hbase.kerberos.regionserver.principal", "hbase/_HOST@HTSEC.COM");
HBaseClient hbaseClient = new HBaseClient(asyncConfig);
//认证
KerberosClientAuthProvider authProvider = new KerberosClientAuthProvider(hbaseClient);


<dependency>
<groupId>org.hbase</groupId>
<artifactId>asynchbase</artifactId>
<version>1.8.2</version>
</dependency>
posted @ 2020-09-23 15:27  zuoql  阅读(911)  评论(0编辑  收藏  举报