Интегрированная проверка подлинности Windows в Active Directory Java - PullRequest
2 голосов
/ 18 июня 2009

Вы можете увидеть в следующих сообщениях

http://forums.sun.com/thread.jspa?threadID=603815

http://forums.devshed.com/ldap-programming-76/active-directory-services-using-java-api-89586.html пример доступа к LDAP с использованием класса InitialLdapContext в Java. Для этого требуется передать логин и пароль . (Даже если учетная запись службы или пользователь, выполняющий процесс Java, уже вошли в систему для возможности запуска.)

Поскольку учетная запись пользователя или службы уже вошла в систему - они уже могут запускать команды активного каталога, как указано ниже, без имени пользователя и пароля:

dsquery user -samid "login" |dsget user -samid -email -display

Так зачем Java * логин и пароль - если этот запрос уже доступен для windows? Косуке намекает, что это не требуется в этом сообщении в блоге под выводом:

https://community.oracle.com/blogs/kohsuke/2008/06/12/more-active-directory-integration-java

Мой вопрос - как мы можем вызвать активный каталог в Java без:

  • с использованием логина или пароля (работает под учетной записью, которая уже вошла в систему)?
  • выполнить команду в командной строке?

Ответы [ 2 ]

3 голосов
/ 18 июня 2009

Это, вероятно, происходит потому, что

  • Вы используете библиотеки / контексты LDAP для связи с Active Directory, и эти библиотеки должны поддерживать другие типы LDAP (AD даже считается LDAP?)
  • Поставщики этих реализаций являются теми, кто требует этого. Связь LDAP осуществляется через провайдеров, которые предоставляют реализацию, а не из-за фактической среды выполнения Java.
  • Пароль текущего пользователя (я надеюсь) фактически не предоставляется Windows для Java.

Когда Windows аутентифицирует вас по AD, когда вы запускаете приложения, которым это требуется, она представляет некоторый другой набор учетных данных, помимо вашего действительного пароля. Эти учетные данные недоступны в Java, или, по крайней мере, ни один из поставщиков коммуникаторов LDAP не предоставил способ его получения.

В своем другом посте на эту тему в блоге Kohsuke немного подробнее рассказывает о том, почему все обстоит именно так, как в Java-земле, когда дело доходит до Active Directory.

1 голос
/ 09 сентября 2009

Также вы можете перейти по ссылке ниже, чтобы найти подробные инструкции по работе встроенной аутентификации Windows на платформе Java.

http://webmoli.com/2009/08/29/single-sign-on-in-java-platform/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...