Хранение паролей и ключей доступа в открытом виде в XML-конфигах Hadoop создает риски утечки данных. Такие файлы часто доступны широкому кругу пользователей, что делает их уязвимыми для случайного копирования или несанкционированного доступа.
Механизм Hadoop Credential Provider API, доступный с версии 2.6, позволяет приложениям запрашивать секреты из защищенного хранилища JCEKS. При использовании этого API компоненты экосистемы обращаются к методу getPassword() вместо чтения открытого текста из конфигурационных файлов.
Формат JCEKS хранит пары «имя-значение», зашифрованные мастер-паролем. Несмотря на использование алгоритма 3DES, признанного NIST устаревшим с 2024 года, JCEKS остается штатным решением. Безопасность системы напрямую зависит от защиты мастер-пароля, который можно хранить в отдельных файлах или tmpfs.
Процесс ротации секретов при ручном управлении требует создания нового JCEKS-файла, его распространения по всем узлам кластера и перезапуска сервисов. Это трудоемкая задача, которую автоматизируют специализированные платформы, такие как ADCM от Arenadata.
Автоматизация шифрования не отменяет необходимости контроля прав доступа. Некорректные настройки разрешений на файлы JCEKS в HDFS могут привести к тому, что любой пользователь с доступом к файловой системе сможет прочитать секреты, даже если они извлечены из XML-конфигов.






