用戶(hù)訪問(wèn)Apache HBase的簡(jiǎn)單方法

2018-04-24 10:50 更新

用戶(hù)訪問(wèn)Apache HBase

較新版本的Apache HBase(0.92版本以后)支持客戶(hù)端的可選SASL身份驗(yàn)證。

本節(jié)介紹如何設(shè)置Apache HBase和客戶(hù)端,以便用戶(hù)訪問(wèn)HBase資源。

簡(jiǎn)單與安全訪問(wèn)

以下部分介紹如何設(shè)置用戶(hù)訪問(wèn)Apache HBase的一種簡(jiǎn)單方法。簡(jiǎn)單的用戶(hù)訪問(wèn)不是一種運(yùn)行HBase的安全方法。此方法用于防止用戶(hù)犯錯(cuò)。它可用于在開(kāi)發(fā)系統(tǒng)上模擬訪問(wèn)控制,而無(wú)需設(shè)置Kerberos。

此方法不用于防止惡意或黑客入侵。為了使HBase能夠抵御這些類(lèi)型的攻擊,您必須配置HBase進(jìn)行安全操作。請(qǐng)參閱客戶(hù)端安全訪問(wèn)Apache HBase部分并完成此處描述的所有步驟。

簡(jiǎn)單用戶(hù)訪問(wèn)操作的服務(wù)器端配置

將以下內(nèi)容添加到群集中每個(gè)服務(wù)器計(jì)算機(jī)上的hbase-site.xml文件中:

<property>
  <name>hbase.security.authentication</name>
  <value>simple</value>
</property>
<property>
  <name>hbase.security.authorization</name>
  <value>true</value>
</property>
<property>
  <name>hbase.coprocessor.master.classes</name>
  <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>
<property>
  <name>hbase.coprocessor.region.classes</name>
  <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>
<property>
  <name>hbase.coprocessor.regionserver.classes</name>
  <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>

對(duì)于Apache HBase 0.94版本,請(qǐng)將以下內(nèi)容添加到集群中每臺(tái)服務(wù)器計(jì)算機(jī)上的hbase-site.xml文件中:

<property>
  <name>hbase.rpc.engine</name>
  <value>org.apache.hadoop.hbase.ipc.SecureRpcEngine</value>
</property>
<property>
  <name>hbase.coprocessor.master.classes</name>
  <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>
<property>
  <name>hbase.coprocessor.region.classes</name>
  <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>

部署這些配置更改時(shí),需要完全關(guān)閉并重新啟動(dòng)HBase服務(wù)。

簡(jiǎn)單用戶(hù)訪問(wèn)操作的客戶(hù)端配置

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

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

對(duì)于Apache HBase 0.94版本,請(qǐng)將以下內(nèi)容添加到集群中每臺(tái)服務(wù)器計(jì)算機(jī)上的hbase-site.xml文件中:

<property>
  <name>hbase.rpc.engine</name>
  <value>org.apache.hadoop.hbase.ipc.SecureRpcEngine</value>
</property>

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

簡(jiǎn)單用戶(hù)訪問(wèn)操作的客戶(hù)端配置 - Thrift Gateway

用戶(hù)將需要訪問(wèn)Thrift網(wǎng)關(guān)。例如,要為T(mén)hrift API用戶(hù)提供thrift_server管理訪問(wèn),你可能需要使用如下的命令:

grant 'thrift_server', 'RWCA'

Thrift網(wǎng)關(guān)將使用提供的憑證向HBase進(jìn)行身份驗(yàn)證。Thrift網(wǎng)關(guān)本身不會(huì)執(zhí)行任何身份驗(yàn)證。所有通過(guò)Thrift網(wǎng)關(guān)訪問(wèn)的客戶(hù)端都將使用Thrift網(wǎng)關(guān)的憑證并擁有其權(quán)限。

簡(jiǎn)單用戶(hù)訪問(wèn)操作的客戶(hù)端配置 - REST Gateway

REST網(wǎng)關(guān)將使用提供的憑證對(duì)HBase進(jìn)行身份驗(yàn)證。REST網(wǎng)關(guān)本身不會(huì)執(zhí)行任何身份驗(yàn)證。所有通過(guò)REST網(wǎng)關(guān)訪問(wèn)的客戶(hù)端都將使用REST網(wǎng)關(guān)的憑證并擁有其權(quán)限。

REST網(wǎng)關(guān)用戶(hù)將需要訪問(wèn)。例如,要為REST API用戶(hù)提供rest_server管理訪問(wèn),你可能需要使用如下的命令:

grant 'rest_server', 'RWCA'
以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)