2008-10-21 3 views
0

SQL Server JDBC 신뢰할 수있는 연결 인증은 어떻게 작동합니까? (즉, 신뢰할 수있는 연결이 로그인 된 AD 사용자를 투명하고 우아하게 인증하는 방법과 데이터베이스 연결 또는 기존 SQL Server 솔루션을 사용하지 않고 Java의 내 클라이언트 - 서버 응용 프로그램에 대해 유사한 인증 솔루션을 구현하는 방법은 무엇입니까? .)SQL Server JDBC 신뢰할 수있는 연결 인증은 어떻게 작동합니까?

가정 * 당신은 윈도우 API에 액세스 할 수 있습니다 * 당신은 this question 봤어 JNI/JNA

답변

1

클라이언트에 따라 다릅니다. 예를 들어 웹 브라우저가있는 경우 NTLM 인증을 사용하여 현재 클라이언트의 도메인 인증을 서버에 전달할 수 있습니다. 이 경우 IE 나 FF 같은 브라우저가이를 지원하므로 웹 서버가 NTLM을 지원해야합니다. 당신이 당신의 자신의 클라이언트가있는 경우는 사용 할 수있는 경우 http://java.sun.com/javase/6/docs/technotes/guides/security/jgss/lab/index.html

, 그것은 클라이언트의 프레임 워크에 따라 달라집니다 여기에 톰캣에 대한 예를 들어 여기에 설명 된대로 http://jcifs.samba.org/src/docs/ntlmhttpauth.html

은 또한 Kerberos를 조합 SPNEGO의 protcol 있습니다 로컬 사용자의 보안 컨텍스트를 전달할 수 있습니다. 위의 페이지는 적어도 kerberos 시나리오에 대해 설명합니다.

인사말 번드

PS : 당신은 SQL Server와 같은 백엔드 구성 요소에 JCIFS/ntmlm 솔루션을 설립 인증 컨텍스트를 통과 할 수 있을지는 확실하지 않다. Kerberos 티켓 (구성된 경우)을 사용해야합니다.

+0

이 PS 주석은 질문에 관한 것입니다. jcifs로 설정된 인증 컨텍스트를 SQL Server와 같은 백엔드 구성 요소에 전달하려고합니다. 제안 사항이 있으십니까? – hawkeye

0

를 통해 윈도우 2003 도메인 내에서 작업? 이 상황은 Windows 인증을 사용하여 SQL Server 데이터베이스에 연결하는 것과 비슷합니다.

1

jTDS 및 Microsoft JDBC 드라이버는 모두 고유 한 Windows 인증을 제공합니다.