Как работает аутентификация доверенного соединения JDBC в SQL Server? - PullRequest
0 голосов
/ 21 октября 2008

Как работает аутентификация доверенного соединения JDBC в SQL Server? (т.е. как доверенное соединение аутентифицирует зарегистрированного пользователя AD таким прозрачным и элегантным способом и как я могу реализовать аналогичное решение для аутентификации для моих клиент-серверных приложений на Java без подключения к базе данных или какого-либо использования существующего решения SQL Server .)

Предположение * Работа в домене Windows 2003 * У вас есть доступ к Windows API через JNI / JNA

Ответы [ 3 ]

1 голос
/ 22 октября 2008

Это зависит от клиента. Например, если у вас есть веб-браузер, он может использовать проверку подлинности NTLM для передачи проверки подлинности домена текущего клиента на сервер. В этом случае браузер, такой как IE или FF, поддерживает это, и ваш веб-сервер нуждается в поддержке NTLM. Например, здесь для Tomcat: http://jcifs.samba.org/src/docs/ntlmhttpauth.html

Существует также протокол SPNEGO в сочетании с Kerberos, как описано здесь: http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/lab/index.html

Если у вас есть собственный клиент, он зависит от клиентской среды, сможет ли он использовать контекст безопасности локального пользователя и может передать его. Страница выше описывает это по крайней мере для сценария Kerberos.

Поздравления Бернд

PS: я не уверен, что вы можете передать контекст аутентификации, установленный с помощью решения jcifs / ntmlm, в бэкэнд-компонент, такой как SQL Server. Должно работать с билетами Kerberos (если настроено).

1 голос
/ 11 ноября 2008

jTDS и драйвер Microsoft JDBC предлагают собственную аутентификацию Windows.

0 голосов
/ 21 октября 2008

Вы смотрели на этот вопрос ? Кажется, что ситуация похожа на вашу (подключение к базе данных SQL Server с использованием аутентификации Windows).

...