WSO2 Identity Server 5.1.0 - 重试IWA身份验证

时间:2016-04-22 09:08:38

标签: authentication wso2is iwa

我知道IWA身份验证器主要针对SPNEGO身份验证。我的问题是回到基本身份验证。

当用户未提供SPNEGO协商标头时(用户未以域用户身份登录或浏览器不信任该网站),Waffle IWA将回退到基本身份验证(可以)

问题是,一旦用户输入无效凭据,IWA身份验证器就会抛出/显示异常,而无需重试任何选项。

com.sun.jna.platform.win32.Win32Exception: The logon attempt failed
    waffle.windows.auth.impl.WindowsAuthProviderImpl.acceptSecurityToken(WindowsAuthProviderImpl.java:137)
    waffle.servlet.spi.NegotiateSecurityFilterProvider.doFilter(NegotiateSecurityFilterProvider.java:102)
    waffle.servlet.spi.SecurityFilterProviderCollection.doFilter(SecurityFilterProviderCollection.java:116)
    org.wso2.carbon.identity.application.authenticator.iwa.servlet.IWAServelet.doPost(IWAServelet.java:89)

我相信在之前的版本(5.0.0.SP1)中,用户可以重新进行身份验证(显示了一个新的弹出窗口),但是目前我无法对其进行验证。

有没有办法强制/允许重试基本身份验证?

1 个答案:

答案 0 :(得分:1)

我错过了tomcat web.xml的配置

<security-constraint>
 <display-name>Security Constraint for IWA</display-name>
 <web-resource-collection>
  <web-resource-name>Protected Area</web-resource-name>
  <url-pattern>/iwa/*</url-pattern>
  <http-method>DELETE</http-method>
  <http-method>GET</http-method>
  <http-method>POST</http-method>
  <http-method>PUT</http-method>
 </web-resource-collection>
 <auth-constraint>
  <role-name>Everyone</role-name>
 </auth-constraint>
</security-constraint>

在这种情况下,会询问基本身份验证并在失败时重试