現在、私の知恵は終わっています。私はJIRAプラグイン(Atlassian Java SDK)をSQL Server 2012データベースに接続しようとしています。私がWindows認証を使用することを必要ですが、JIRAは、ログインしている:JIRAプラグインでWindows認証を使用したSQL ServerへのJDBC URL接続
com.microsoft.sqlserver.jdbc.SQLServerException: This driver is not configured for integrated authentication.
私は、これはプログラムのライブラリパスにsqljdbc_auth.dll
ファイルを追加することで闘おできることを読みましたが、具体的にJIRAプラグインの参照がありません私が使っていないベースJIRA dbconfig.xml
以外のやり方このコードを使用して、プラグインの中に作られた接続です:私はすべて無駄に、次の場所にdllファイルを追加しようとしました
String url = String.format("jdbc:sqlserver://%s:1433;databaseName=%s;integratedSecurity=true;domain=XXXX;", server, database);
:
C:/{JIRA INSTALL PATH}/bin
C:/{JIRA INSTALL PATH}/jre/bin
C:/{JAVA INSTALL PATH}/jre_8.x.x/bin
何が得られますか?
UPDATE: 私はに行ってとJIRA Windowsサービスの設定ツールで、それぞれのクラスパス/ライブラリパスにJDBCのJAR/DLLを追加しました。まだ同じエラーが発生しています。
UPDATE 2:
私はJIRAはいくつかの理由で、標準のJDBCドライバを使用することができませんでしたかどうかを確認するためにJTDSドライバを使用しますが、同様のエラーを取得に切り替えています
java.sql.SQLException: I/O Error: SSO Failed: Native SSPI library not loaded. Check the java.library.path system property.
制御された環境でこれをテストするための新しいJavaアプリケーションも作成しましたが、ファイルをC:\Windows\System32
ディレクトリに追加してもこのエラーは発生しません。これは、これがJIRAのバグかもしれないと信じてしまいます。あるいは、私は何か不適切な設定をしています。ここで
jiraなしで、あなたは通常jdbcを使ってそのデータベースに接続できますか? – Daniel
実際に使用した値がスクリーンショットに表示されないため、何を設定しましたか? 1) 'java.library.path'は** folder **を指していなければならないこと、2)' sqljdbc_auth.dll'(auth、athではない)は32ビットと64ビットのバリエーションであることに注意してください。 3)JIRAを実行しているユーザは、SQL Serverに対してWindows認証を使用できないローカルシステムアカウントである可能性があります(ただし、IIRCエラーが発生します)。 –
@MarkRotteveelはい、 'java.library.path'はdllではなく、' C:\ Program Files \ Microsoft JDBC 4.0 for SQL Server \ sqljdbc_4.0 \ x64'フォルダを指しています。 JIRAが使用するJVMは、64ビットバージョンです。これは、JIRA/Javaのバージョンです。 –