【问题标题】:Spring security + Struts 1.2 integrationSpring security + Struts 1.2 集成
【发布时间】:2012-01-18 06:53:54
【问题描述】:
我有一个使用 struts1.2 和 ejb2.1 的应用程序,现在我想在其中使用 LDAP 服务器添加 spring 安全性。
Spring Security如何与struts1.2集成?
【问题讨论】:
标签:
java
spring
spring-security
ldap
struts
【解决方案1】:
集成不应与任何其他网络应用不同。
-
您需要 spring-security 依赖项,无论是 jars 还是 maven 依赖项。我会发布 maven 依赖项,如果你不使用 maven,你可以从这里查看 jars:mvn browser
<properties>
<spring.version>3.0.1.RELEASE</spring.version>
</properties>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${spring.version}</version>
</dependency>
-
您需要在web.xml 中定义的FilterChainProxy:
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
-
您需要在 web.xml 中定义您的 spring 上下文位置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/spring-contexts/myContextConfig.xml</param-value>
</context-param>
-
您需要在 web.xml 中定义的 ContextLoaderListener:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
最后,您可以查看petclinic tutotial app 的基本安全配置。
应该可以的。