2017-01-26 13 views
0

私はMS Accessで開発されたアプリケーションを持っていますが、現在Apache Tomcatを使用してWebアプリケーションに切り替えています。TomcatによるSQLServer Windows認証

アクセスアプリケーションには、SQL Serverデータベースが完全にリンクされているため、データを完全に制御できます。

ActiveDirectory認証をSQL Serverに渡すことで、アプリケーションが隠しプロセスを実行しているため、ユーザーはパスワードを入力しません。

しかし、Tomcatから、データベース接続をテストするために、JDBCドライバとWindows認証(jdbc:sqlserver://SERVERADDRESS;integratedSecurity=true;)を使用してSQL Serverに接続しようとしました。jspファイルのみでした。

ここで問題となっているのは、Webブラウザからアプリを起動したユーザーログインを渡す代わりに、サーバー識別子(これはDOMAIN\SERVERNAME)になります。

この方法でユーザー名を取得することはできますか、接続システムを完全に変更する必要はありますか?

答えて

1

Kerberosの資格委任/ S4Uサービスなしでは不可能です。特に、JavaのKerberos実装を使用しない場合は、Windows SSPIの実装を使用します。

最初にSPNEGOで認証され、その後戻ってくるようにユーザーを開始してください。

+0

Kerberosは完全に透過的ですか?つまり、ユーザーは何もする必要はありませんか? –

+0

はい、正しいです。すべてがActive Directoryレベルとコードで構成されています。あなたのクライアントのためのゼロのconf。 IEはデフォルトで委任を可能にします。 Firefoxは少しスイッチです。 –

+0

ご協力いただきありがとうございます! –