Apache HDFS (Hadoop Distributed File System) ist ein Dateisystem zum Speichern großer Dateien, die blockweise auf die Knoten eines Computerclusters verteilt sind.
Apache Hive ist ein Datenbankverwaltungssystem, das auf der Hadoop-Plattform basiert.
Apache HBase ist ein Open Source NoSQL DBMS-Projekt des Hadoop-Ökosystems.
Apache KNOX, eine REST-API und ein Anwendungsgateway für Apache Hadoop-Ökosystemkomponenten, bietet einen einzigen Zugriffspunkt für alle HTTP-Verbindungen zu Apache Hadoop-Clustern und ein Single Sign On-System (SSO) für Dienste und Benutzeroberflächen von Apache Hadoop-Komponenten.
Apache Ranger ist ein Framework für die Bereitstellung, Überwachung und Verwaltung von End-to-End-Datensicherheit auf der Hadoop-Plattform
Übersetzung eines Beitrags von 2015 von Securing hdfs hive hbase knox ranger . Ich konnte keinen besseren und neueren Beitrag finden.
Einführung
Apache Ranger bietet einen umfassenden Ansatz zum Sichern eines Hadoop-Clusters. Es bietet eine zentralisierte Verwaltung von Sicherheitsrichtlinien für wichtige Sicherheitsanforderungen des Unternehmens, einschließlich Autorisierung, Buchhaltung und Datenschutz.
Apache Ranger erweitert grundlegende Funktionen für die koordinierte Verwendung über Hadoop-Workloads hinweg, einschließlich Batch, interaktivem SQL und Echtzeit-Hadoop.
In diesem Tutorial werden wir uns mit der Verwendung von Apache Ranger für HDP 2.3 befassen, um Ihre Hadoop-Umgebung zu sichern. Wir werden folgende Themen behandeln:
Unterstützt die Knox-Autorisierung und -Prüfung
Befehlszeilenrichtlinien in Hive
Befehlszeilenrichtlinien in HBase
REST-API für Policy Manager
Voraussetzungen
Hortonworks Sandbox, SSH:

Knox LDAP
Ambari http://localhost:8080/ ( — admin admin ) Knox .

Service Actions
Start
.

Knox :

Service Actions
Knox
Start Demo LDAP
.

- LDAP :

Knox
, Ranger http://localhost:6080/ -. — admin
, — admin
.

,
sudo service ranger-admin start

sandbox_knox Knox Ranger Administration Portal

, .

Knox, global knox allow
.

Sandbox for Guest
Ranger Admin .

Sandbox for Guest

SSHd ( Sandbox) CURL WebHDFS.
curl -k -u admin:admin-password 'https://127.0.0.1:8443/gateway/knox_sample/webhdfs/v1?op=LISTSTATUS'

Ranger Policy Manager → Audit screen , () Knox.

CURL, guest
.
curl -k -u guest:guest-password 'https://127.0.0.1:8443/gateway/knox_sample/webhdfs/v1?op=LISTSTATUS'

{"FileStatuses":{"FileStatus":[{"accessTime":0,"blockSize":0,"childrenNum":0,"fileId":16393,"group":"hadoop","length":0,"modificationTime":1439987528048,"owner":"yarn","pathSuffix":"app-logs","permission":"777","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":4,"fileId":16389,"group":"hdfs","length":0,"modificationTime":1439987809562,"owner":"hdfs","pathSuffix":"apps","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":1,"fileId":17000,"group":"hdfs","length":0,"modificationTime":1439989173392,"owner":"hdfs","pathSuffix":"demo","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":1,"fileId":16398,"group":"hdfs","length":0,"modificationTime":1439987529660,"owner":"hdfs","pathSuffix":"hdp","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":1,"fileId":16394,"group":"hdfs","length":0,"modificationTime":1439987528532,"owner":"mapred","pathSuffix":"mapred","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":2,"fileId":16396,"group":"hadoop","length":0,"modificationTime":1439987538099,"owner":"mapred","pathSuffix":"mr-history","permission":"777","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":1,"fileId":16954,"group":"hdfs","length":0,"modificationTime":1439988741413,"owner":"hdfs","pathSuffix":"ranger","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":3,"fileId":16386,"group":"hdfs","length":0,"modificationTime":1440165443820,"owner":"hdfs","pathSuffix":"tmp","permission":"777","replication":0,"storagePolicy":0,"type":"DIRECTORY"},{"accessTime":0,"blockSize":0,"childrenNum":8,"fileId":16387,"group":"hdfs","length":0,"modificationTime":1439988397561,"owner":"hdfs","pathSuffix":"user","permission":"755","replication":0,"storagePolicy":0,"type":"DIRECTORY"}]}}
Ranger Policy Manager → Audit screen.

Ranger Knox , Knox, , Ranger.
Knox Ranger, (WebHDFS, WebHCAT . .) , / IP-

grant/revoke Hive
Ranger grant
/revoke
, Hue for Hive
. Ranger , , Hive .

Hive Ranger.

Grant
, Hive
. beeline,
beeline -u "jdbc:hive2://sandbox.hortonworks.com:10000/default" -n it1 -p it1-d org.apache.hive.jdbc.HiveDriver

GRANT
grant select, update on table xademo.customer_details to user network1;
:

Ranger Administration Portal → Audit

, it1
.
Ranger it1
. Ranger , .

beeline , .
GRANT select, update on table xademo.customer_details to user network1;

, , / Ranger Admin Portal → Policy Manager. , , .

?
Ranger GRANT/REVOKE
Hive
. Hive
(Hiveserver2
).
GRANT
REVOKE
.
grant/revoke HBase
Ranger grant/revoke
, Hbase
. Hive, Ranger Hbase .
, , HBase Ambari — http://127.0.0.1:8080 ( admin
).
, Service Actions
.

Grant Hbase.
HBase Global Allow
Ranger Administration Portal — .

HBase it1
su - it1 [it1@sandbox ~]$ hbase shell

grant, mktg1
, iemployee
.
hbase(main):001:0> grant 'mktg1', 'RWC', 'iemployee'
, :

Ranger Administration Portal→ Policy Manager , admin
it1
.

HBase.
hbase(main):006:0> grant 'mktg1', 'RWC', 'iemployee' 0 row(s) in 0.8670 seconds

HBase Ranger Policy Administration. iemployee
, .

, Ranger. HBase
hbase(main):007:0> revoke 'mktg1', 'iemployee' 0 row(s) in 0.4330 seconds
,

?
Ranger GRANT/REVOKE
Hbase . .
GRANT
REVOKE .
REST APIs
Ranger REST API. API , , .
REST API
CURL. API hadoopdev-testing-policy2
HDFS sandbox_hdfs
curl -i --header "Accept:application/json" -H "Content-Type: application/json" --user admin:admin -X POST http://127.0.0.1:6080/service/public/api/policy -d '{ "policyName":"hadoopdev-testing-policy2","resourceName":"/demo/data/test","description":"Testing policy for /demo/data/test","repositoryName":"sandbox_hdfs","repositoryType":"HDFS","permMapList":[{"userList":["mktg1"],"permList":["Read"]},{"groupList":["IT"],"permList":["Read"]}],"isEnabled":true,"isRecursive":true,"isAuditEnabled":true,"version":"0.1.0","replacePerm":false}'

hadoopdev-testing-policy2

.

URL- http://127.0.0.1:6080/index.html#!/hdfs/1/policy/26
.
CURL, API.
curl -i --user admin:admin -X GET http://127.0.0.1:6080/service/public/api/policy/26
?
REST API. API , REST API Ranger.
Hoffentlich haben Sie auf dieser schwindelerregenden Tour durch Ranger die Einfachheit und Leistungsfähigkeit von Ranger für das Sicherheitsmanagement erlebt.