HBase:用于安全操作的客戶端配置

2018-04-16 11:13 更新

用于安全操作的客戶端配置

首先,請(qǐng)參閱“客戶端安全訪問(wèn)Apache HBase”并確保您的基礎(chǔ) HDFS 配置是安全的。

將以下內(nèi)容添加到每個(gè)客戶端上的 hbase-site.xml 文件中:

<property>
  <name>hbase.security.authentication</name>
  <value>kerberos</value>
</property>

客戶端環(huán)境必須通過(guò) kinit 命令從 KDC 或 keytab 登錄到 Kerberos,然后才能與 HBase 群集通信。

請(qǐng)注意,如果客戶端和服務(wù)器端站點(diǎn)文件中的 hbase.security.authentication 不匹配,則客戶端將無(wú)法與群集進(jìn)行通信。

一旦將 HBase 配置為安全 RPC,就可以選擇配置加密通信。為此,請(qǐng)將以下內(nèi)容添加到每個(gè)客戶端上的 hbase-site.xml 文件中:

<property>
  <name>hbase.rpc.protection</name>
  <value>privacy</value>
</property>

此配置屬性也可以在每個(gè)連接的基礎(chǔ)上進(jìn)行設(shè)置。將其設(shè)置為 Configuration 提供給 Table:

Configuration conf = HBaseConfiguration.create();
Connection connection = ConnectionFactory.createConnection(conf);
conf.set("hbase.rpc.protection", "privacy");
try (Connection connection = ConnectionFactory.createConnection(conf);
     Table table = connection.getTable(TableName.valueOf(tablename))) {
  .... do your stuff
}

對(duì)于加密通信,預(yù)計(jì)會(huì)有大約 10% 的性能損失。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)