Java で Tomcat 7 アプリケーションを使用してWaffleを使用しようとしていますが、Windows での認証が機能しません。
私は正常に動作する Web アプリケーションを持っているので、Waffle に Maven の依存関係を追加しました。
<dependency>
<groupId>com.github.dblock.waffle</groupId>
<artifactId>waffle-jna</artifactId>
<version>1.7.4</version>
</dependency>
そして、web.xml にフィルターを追加しました。
<filter>
<filter-name>SecurityFilter</filter-name>
<filter-class>waffle.servlet.NegotiateSecurityFilter</filter-class>
<init-param>
<param-name>principalFormat</param-name>
<param-value>fqn</param-value>
</init-param>
<init-param>
<param-name>roleFormat</param-name>
<param-value>both</param-value>
</init-param>
<init-param>
<param-name>allowGuestLogin</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>impersonate</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>securityFilterProviders</param-name>
<param-value>waffle.servlet.spi.NegotiateSecurityFilterProvider</param-value>
</init-param>
<init-param>
<param-name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>
<param-value>
NTLM
Negotiate
</param-value>
</init-param>
<filter-mapping>
<filter-name>SecurityFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
そのため、自分のページにアクセスすると、ログインダイアログが開き、ユーザーがログインします。問題は、ユーザーがすでに一度ログインしていて、ダイアログが開いたときに、ユーザーが自分の資格情報を再度入力する必要があることです。保存されません。ワッフルを使用して、SSO を使用して資格情報を保存しようとしましたが、コンソールで常に次のエラーが発生します。
[waffle.servlet.NegotiateSecurityFilter] error logging in user: com.sun.jna.platform.win32.Win32Exception: