credential
Управляет учетными данными, паролями и секретными ключами в поставщиках учетных данных (credential providers).
CredentialProvider API в Arenadata Hadoop позволяет разделить приложения и то, как они хранят свои пароли/секреты.
Чтобы указать конкретный тип и местоположение провайдера, необходимо указать параметр конфигурации hadoop.security.credential.provider.path
в core-site.xml или использовать флаг -provider
для каждой из следующих команд.
Путь к провайдеру представляет собой список URL-адресов, разделенных запятыми, который указывает тип и расположение списка провайдеров, к которым следует обратиться.
Например, путь user:///jceks://file/tmp/test.jceks,jceks://hdfs@nn1.example.com/my/path/test.jceks указывает, что:
-
к файлу учетных данных текущего пользователя следует обращаться через User Provider;
-
локальный файл /tmp/test.jceks является Java Keystore Provider;
-
HDFS-файл nn1.example.com/my/path/test.jceks также является хранилищем для Java Keystore Provider.
Команда credential
часто используется для предоставления пароля или секретного ключа определенному поставщику хранилища учетных данных.
Чтобы явно указать, какое хранилище провайдеров использовать, используйте флаг -provider
.
Иначе при указании нескольких путей к провайдерам будет использован первый непереходный провайдер.
Это может быть как нужный провайдер, так и любой другой.
Провайдеры часто требуют ввода пароля или другого секретного ключа.
Если провайдер требует пароль и не может его найти, он использует пароль по умолчанию и выдает предупреждение о том, что используется пароль по умолчанию.
Если установлен флаг -strict
, предупреждение становится сообщением об ошибке, и команда немедленно возвращается со статусом ошибки.
Использование показано ниже:
$ hadoop credential <subcommand> [options]
print |
Выводит поля в токенах, содержащихся в filename (и filename2 …). |
get URL |
Получает токен от сервиса по URL-адресу и помещает его в файл. |
append |
Добавляет содержимое первых |
remove -alias alias |
Из каждого указанного файла удаляет токены, соответствующие |
cancel -alias alias |
Аналогично |
renew -alias alias |
Для каждого указанного файла обновляет токены, соответствующие |
import base64 |
Импортирует Base64-токен. |
Пример:
$ hadoop credential list -provider jceks://file/tmp/test.jceks