Bienvenido a re-orientation! Esperamos que encuentres lo que buscas

Implementando nuestro proveedor de autenticación personalizado. La clase CustomJdbcDaoImpl

Una vez que ya tenemos nuestro SecurityUser, toca el turno a la clase a medida CustomJdbcDaoImpl que hemos declaramos en el security-context.xml. Vamos a centrarnos en las modificaciones a realizar en el proceso de recuperación de la información del usuario, y una vez más nos apoyaremos en las clases de Spring y las extendemos para incorporar información extra.

La nueva clase de acceso a datos CustomJdbcDaoImpl extenderá las funcionalidades de la clase de Spring JdbcDaoImpl incluyendo nuestra consulta personalizada (DEF_USERS_BY_USERNAME_QUERY) para recuperar la información del usuario buscando por el campo “username” del modelo de datos...

El mvc-core-config.xml. Configurando la navegación Spring MVC

Una vez configurados el security-context.xml, business-config.xml y datasource-config.xml; sólo nos queda por configurar el fichero donde declararemos la navegación a través de nuestra aplicación con Spring MVC Framework (mvc-core-config.xml).

En Spring MVC, las clases anotadas como Controladores (controllers), suplen a los servlets tradicionales. Su función es básicamente la misma (llevar el flujo de navegación) solo que la complejidad se reduce gracias a las facilidades que nos brinda el framework, como veremos posteriormente...

El datasource-config.xml. Configurando Spring JDBC

Para gestionar los accesos a la Base de Datos nos apoyaremos en Spring JDBC. Este framework se encargará de gestionar por nosotros las aperturas y cierres de conexiones, preparación y ejecución de los statements, la captura de exceptions asociadas, el manejo de transacciones, así como los cierres de statement/resultset...


Parte del manual paso a paso para desarrollar una aplicación web con Spring Framework + Spring Security contra una base de datos MySQL.

El business-config.xml. Configuración de la capa de servicios


Parte del manual paso a paso para desarrollar una aplicación web con Spring Framework + Spring Security contra una base de datos MySQL.

Vamos a trabajar ahora en la configuración de la capa de negocios (o capa de servicios) de nuestro proyecto, que centralizaremos en el fichero business-config.xml.

El security-context.xml. Configuración de Spring Security

Llegados a este punto, ya hemos introducido las dependencias a los módulos de Spring Security y especificado a nuestra aplicación donde encontrar la configuración de seguridad; sólo nos queda pendiente configurar el framework a través de nuestro fichero security-context.xml

Configurando las restricciones de acceso y un proveedor de autenticación personalizado

En nuestro caso, para securizar las URLs usaremos expresiones, lo que indicaremos declarando el atributo use-expressions en del elemento <http> a true...


Parte del manual paso a paso para desarrollar una aplicación web con Spring Framework + Spring Security contra una base de datos MySQL.

Creación del proyecto web con Maven y configuraciones básicas

Una vez creadas las tablas MySQL e insertados los datos contra los que se realizará la autenticación de los usuarios, vamos a crear el proyecto web Eclipse, definir el proyecto y declarar las dependencias en el pom.xml.

Para implementar nuestra funcionalidad partiremos de un entorno de desarrollo j2ee operativo. No entraremos en detalles de instalación y configuración de entorno de trabajo, ya que en la red hay manuales de calidad sobre el tema.

El entorno de pruebas usado para la elaboración de este tutorial es el siguiente...

Creación de las tablas de Base de Datos MySQL. Inserción de los datos de pruebas

Veremos ahora como preparar el entorno de Base de Datos (en lo adelante BDD) para implementar nuestro caso de uso ejemplo:

Nos conectamos a la instancia de BDD del servidor, donde vamos crear las tabla en las que insertaremos la información de los usuarios (USERS), los roles disponibles en nuestra aplicación (AUTHORITY_LIST) , así como los roles asignados a los usuarios concretos (AUTHORITIES).

La estructura de las tablas AUTHORITIES y AUTHORITY_LIST son las que Spring Security recomienda. Sin embargo en el caso de la tabla de USERS, se han añadido los campos de: NOMBRE, APELLIDOS, FECHA_NACIMIENTO, SEXO, FECHA_ALTA, FECHA_MODIFICACION, HUSO_HORARIO y CORREO_ELECTRONICO_PPAL...


Parte del manual paso a paso para desarrollar una aplicación web con Spring Framework + Spring Security contra una base de datos MySQL.

Páginas