W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
HBase需要安全的ZooKeeper和HDFS,以便用戶無法訪問或修改HBase下的元數據和數據。HBase使用HDFS(或配置的文件系統(tǒng))來保留其數據文件以及預寫日志(WAL)和其他數據。HBase使用ZooKeeper來存儲操作的一些元數據(主地址(master address),表鎖(table locks),恢復狀態(tài)(recovery state)等)。
ZooKeeper具有可插入的身份驗證機制,可以使用不同的方法訪問客戶端。ZooKeeper甚至允許同時允許經過身份驗證和未經身份驗證的客戶端。通過為每個znode提供訪問控制列表(ACL)來限制對znodes的訪問。ACL包含兩個組件,即身份驗證方法和主體。ACL不是分層強制執(zhí)行的。
HBase守護程序通過SASL和Kerberos向ZooKeeper進行身份驗證(請參閱使用ZooKeeper進行SASL身份驗證)。HBase設置znode ACL,以便只有HBase用戶和配置的hbase超級用戶(hbase.superuser)可以訪問和修改數據。在ZooKeeper用于服務發(fā)現或與客戶端共享狀態(tài)的情況下,由HBase創(chuàng)建的znodes也將允許任何人(不管身份驗證)讀取這些znode(clusterId,主地址,元位置等),但只有HBase用戶可以修改它們。
所有管理的數據都保存在文件系統(tǒng)(hbase.rootdir)的根目錄下。訪問文件系統(tǒng)中的數據和WAL文件應受到限制,以便用戶不能繞過HBase層,并從文件系統(tǒng)中查看底層數據文件。HBase假定使用的文件系統(tǒng)(HDFS或其他)分層次地強制執(zhí)行權限。如果沒有提供足夠的文件系統(tǒng)保護(授權和身份驗證),HBase級別授權控制(ACL,可見性標簽等)就沒有意義,因為用戶可以隨時訪問文件系統(tǒng)中的數據。
HBase對其根目錄執(zhí)行posix-like權限700(rwx------)。這意味著只有HBase用戶可以讀寫FS中的文件。可以通過在hbase-site.xml中進行配置hbase.rootdir.perms來更改默認設置。需要重新啟動活動主服務器,以便更改使用的權限。對于1.2.0之前的版本,您可以檢查是否提交了HBASE-13780,如果沒有,您可以根據需要手動設置根目錄的權限。使用HDFS,該命令將是:
sudo -u hdfs hadoop fs -chmod 700 /hbase
如果你使用不同的hbase.rootdir,你應該改變/hbase。
在安全模式下,應配置SecureBulkLoadEndpoint并將其用于正確地將從MR作業(yè)創(chuàng)建的用戶文件移交給HBase守護程序和HBase用戶。用于批量加載(hbase.bulkload.staging.dir默認為/tmp/hbase-staging)的分布式文件系統(tǒng)中的狀態(tài)目錄應具有(模式711或rwx—?x—?x),以便用戶可以訪問在該父目錄下創(chuàng)建的狀態(tài)目錄,但無法執(zhí)行任何其他操作。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯系方式:
更多建議: