0

我有一个在 Tomcat 上运行并使用 Waffle 对活动目录进行身份验证的 Java 应用程序。我的要求是使用此应用程序中托管的某些休息 url,而无需对图片进行任何身份验证。

配置设置如下。

context.xml(雄猫)

<Valve className="waffle.apache.NegotiateAuthenticator" 
    principalFormat="fqn" roleFormat="both"/>
<Realm className="waffle.apache.WindowsRealm"/>

web.xml

 <security-role>
      <role-name>Everyone</role-name>
 </security-role>

   <security-constraint>
   <display-name>Waffle Security Constraint</display-name>
      <web-resource-collection>
        <web-resource-name>Protected Area</web-resource-name>
        <url-pattern>/*</url-pattern>
      </web-resource-collection>
      <auth-constraint>
        <role-name>Everyone</role-name>
      </auth-constraint>
    </security-constraint>

我怎样才能做到这一点?

4

1 回答 1

0

只需像这样添加第二个不受保护的约束:

<security-constraint>
  <display-name>Login Page</display-name>
  <web-resource-collection>
    <web-resource-name>Unprotected Login Page</web-resource-name>
    <url-pattern>/login.jsp</url-pattern>
  </web-resource-collection>
</security-constraint>

我可能还需要在 context.xml 文件中使用混合身份验证:

<Context>
  <Valve className="waffle.apache.MixedAuthenticator" />
  <Realm className="waffle.apache.WindowsRealm" />
</Context>

但是,我们也可以使它与waffle.apache.NegotiateAuthenticator.

见:https ://github.com/dblock/waffle/blob/master/Docs/tomcat/TomcatMixedSingleSignOnAndFormAuthenticatorValve.md

于 2015-05-18T09:00:45.567 回答