Spring Security
Spring Security es un framework para la autenticación y control de acceso en una aplicación Java.
Contenido
Configuración rápida de Spring Security
Configurar Spring Security para un sitio web consiste en:
- Agregar las librerias de Spring Security al proyecto.
- Crear un archivo de configuración applicationContext-security.xml con las definiciones de los accesos y usuarios.
- Configurar el filtro de Spring Security en el archivo web.xml
1. Configurar las librerias de Spring Security
Usando Maven, incluir 3 dependencias:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>3.1.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>3.1.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>3.1.0.RELEASE</version>
</dependency>
2. Configurar applicationContext-security.xml
Crear un archivo applicationContext-security.xml en la aplicación web. El siguiente archivo tiene una definición de ejemplo agregada.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:sec="http://www.springframework.org/schema/security" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd">
<sec:http auto-config="true" use-expressions="true"> <sec:remember-me key="contactManagerRememberMeUniqueKey"/>
<sec:intercept-url pattern="/login/**" access="true" /> <sec:intercept-url pattern="/**" access="isAuthenticated()" /> </sec:http> <sec:global-method-security pre-post-annotations="enabled"/> <sec:authentication-manager alias="authenticationManager"> <sec:authentication-provider> <sec:user-service> <sec:user name="admin" password="admin" authorities="admin" /> </sec:user-service> </sec:authentication-provider> </sec:authentication-manager>
</beans>
3. Configurar el filtro de Spring Security
En el archivo web.xml configurar:
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<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>
Con esta configuración puede desplegarse la aplicación y se visualizará el login default de Spring Security.