我已经使用 Waffle 配置了 Tomcat SSO 身份验证:
<Context>
<Valve className="waffle.apache.NegotiateAuthenticator" allowGuestLogin="false"/>
<Realm className="waffle.apache.WindowsRealm" />
</Context>
这很好用,并且支持使用 NTLM 回退进行协商。
我想要的是添加 BASIC 身份验证后备。有没有办法做到这一点?
我已经通过添加 Tomcat 的 JAASRealm + Waffle 的 JAAS 支持(使用 Tomcat 的 CombinedRealm)来尝试这个,但没有运气:NegotiateAuthenticator 阻止了任何进一步的处理。(它正在寻找基本安全包,并说“请求的安全包不存在”。它不让 JAASRealm 完成这项工作。)