Контроль доступа пользователей в HDFS через API-интерфейс WebHDFS - PullRequest
0 голосов
/ 19 ноября 2018

Возможно ли управление доступом пользователей на уровне файлов HDFS?В настоящее время каждый может получить доступ к данным, нажав на ссылку, например http://<domain>/webhdfs/v1/xxx.txt?op=OPEN.

Могу ли я установить определенные группы людей, и они могут иметь доступ только к определенным файлам или каталогам?Цель состоит в том, чтобы не позволить другим доступ к файлам, которые им не принадлежат.

Если это не может быть установлено на HDFS, есть ли какие-либо предложения?

1 Ответ

0 голосов
/ 19 ноября 2018

Когда защита отключена, аутентифицированным пользователем является имя пользователя, указанное в параметре запроса user.name.Если параметр user.name не задан, сервер может либо установить для прошедшего проверку пользователя веб-пользователя по умолчанию, если таковой имеется, либо вернуть ответ об ошибке.

Когда защита включена, аутентификация выполняетсялибо токен делегирования Hadoop, либо Kerberos SPNEGO.Если токен установлен в параметре запроса делегирования, аутентифицированный пользователь - это пользователь, закодированный в токене.Если параметр делегирования не задан, проверка подлинности пользователя выполняется с помощью Kerberos SPNEGO.

Ниже приведены примеры использования инструмента команды curl.

Аутентификация при отключенной защите:

curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?[user.name=<USER>&]op=..."

Аутентификация с использованием Kerberos SPNEGO при включенной защите:

curl -i --negotiate -u : "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?op=..."

Аутентификация с использованием токена делегирования Hadoop при включенной защите:

curl -i "http://<HOST>:<PORT>/webhdfs/v1/<PATH>?delegation=<TOKEN>&op=..."

Ссылка: https://hadoop.apache.org/docs/r2.9.0/hadoop-project-dist/hadoop-hdfs/WebHDFS.html#Authentication

...