我们在Windows上的tomcat 8上使用waffle 1.7.3来验证用户(sso)。
我们正在使用华夫饼NegotiateSecurityFilter
以通过getUserPrincipal()
获取域\用户。
一切都在http
以上接受,但在使用https
时请求失败,HTTP状态为401:未经授权。
什么可能导致这个问题?它怎么能修复?
这是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>
<filter-mapping>
<filter-name>SecurityFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
任何帮助将不胜感激。 感谢提前。
答案 0 :(得分:0)
我没有足够的声誉发表评论,因此必须回答。
您能否确保web.xml中的以下行正确无误?
<param name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>
应该是 -
<param-name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>