2012-12-26 8 views
2

JDBC의 다른 사용자 계정으로 Windows 인증을 사용하여 SQL Server에 연결해야합니다. 이것은 내가 사용하고있는 코드입니다 :JDBC에서 다른 사용자 계정으로 Windows 인증을 사용하여 SQL Server에 연결

static final String DB_URL = "jdbc:sqlserver://IP:port; databaseName=xyz; integratedSecurity=false; domain=abc"; 

Connection con = DriverManager.getConnection(DB_URL,USER,PASS); 

그리고 여기에 오류입니다 :

com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'abcd'

+0

여기를 참조하십시오 http://stackoverflow.com/questions/167464/can-i-connect-to-sql-server-using-windows-authentication-from-java-ee-webapp –

+0

늦게 답변드립니다. 응답 주셔서 감사합니다! 나는 jdbc 1.2를 사용하고 있는데 SQL Server 매니지먼트 스튜디오를 통해 SQL Server에 '다른 이름으로 실행'에서 다른 사용자 계정을 사용하여 로그인 할 수 있으며 위의 코드로 연결하려고 시도하면 연결할 수 없습니다. 이 문제를 해결할 수있는 jtds를 사용하거나 jdbc의 가장 높은 버전을 설치해야합니까? – user1929593

답변

1

처럼 당신이 실제로 원하는 경우 integratedSecurity=true을 설정해야 @ 콘스탄틴-V-salikhov에 의해 주어진 질문에 설명 통합 인증을 사용하십시오 (이 경우 응용 프로그램을 실행하는 사용자로 인증됩니다). 또한 sqljdbc_auth.dll 파일이 installed이어야합니다. 당신은 당신이 어떤 사용자 이름이나 암호를 제공하지 않아야 실제 전화를 걸 때, 단지 같은 것을 할 : (당신은 당신의 코드 샘플에서하고있는 것처럼) SQL Server 인증을 사용하려면

Properties info = new Properties(); 
Connection con = DriverManager.getConnection(DB_URL, info); 

당신이 필요 SQL Server 인스턴스에 혼합 모드 인증을 사용합니다.

+1

답장을 보내 주셔서 감사합니다! 하지만 모든 실행에 대해 Windows 인증에 사용되는 특정 사용자 인증을 원합니다. 그것은 가능한가? – user1929593