2015-11-02 1 views
0

У меня есть Kerberos и включен кластер Hadoop. Мне нужно выполнить операции HDFS с использованием Java-кода.Аутентификация Kerberos с включенным кластером Hadoop с использованием Java

У меня есть keytab файл и имя пользователя.

Может кто-нибудь, пожалуйста, предложите, как я могу аутентифицировать Kerberos с помощью Java-кода?

Спасибо.

ответ

0

Если вы просто хотите использовать API-интерфейс HDFS для короткого замыкания, то UserGroupInformation имеет метод loginUserFromKeytab.

Если вам требуется прочное соединение (то есть дольше, чем срок службы исходного Kerberos TGT), посмотрите на that post.

Если вы заинтересованы в темной стороне Kerberos (ну, нет другой стороны в любом случае) затем посмотреть на интернет-книге "Madness beyond the Gate" - на свой страх и риск.

~~~~~~

BTW есть альтернатива Java API: службы WebHDFS REST. Но в Windows вам по-прежнему нужен какой-то Java-код для создания Kerberos TGT (используя GSSAPI, то есть путь Linux, а не SSPI, то есть путь Microsoft!), запустить первоначальную аутентификацию SPNEGO и получить токен делегирования. В этот момент любая библиотека HTTPS сможет обрабатывать операции с файлами, используя этот токен.

+0

Thanks Samson получил его –

+0

Если бы ответ был полезным, вы можете отметить его как «принятый» :-) –

 Смежные вопросы

  • Нет связанных вопросов^_^