2

我们在 windows 上的 tomcat 8 上使用 waffle 1.7.3 来验证用户(sso)。我们正在使用 waffleNegotiateSecurityFilter以通过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>

任何帮助将不胜感激。提前致谢。

4

1 回答 1

0

我没有足够的声誉发表评论,因此必须回答。

您能否确保 web.xml 中的以下行是正确的?

<param          name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>

它应该是 -

<param-name>waffle.servlet.spi.NegotiateSecurityFilterProvider/protocols</param-name>
于 2016-02-18T07:10:29.580 回答