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