Spring ofrece un grupo de tecnologías para implementar autenticación, autorización, filtrado de peticiones y otras funciones de seguridad que son indispensables en una aplicación o API web.
Descripción General
Este programa enseña cómo incorporar en aplicaciones y APIs Web, los componentes de seguridad proveídos por Spring Security, el módulo de Spring especializado en seguridad Web. Así mismo explica la arquitectura del framework y las mecánicas para extenderlo, por ejemplo, al usar tokens JWT.
Dirigido a:
- Desarrolladores de Back-ends y APIs Web
- Arquitectos de software
- Supervisores de desarrollos Web
Objetivo
Que el alumno comprenda y sea capaz de implementar, a nivel aplicación Web o API web, distintas mecánicas de autenticación (formularios de login, Web tokens y OAuth 2), autorización y filtrado de amenazas conocidas, por medio de Spring Security.
Se recomienda cuando:
Se desee implementar, con poco esfuerzo y de manera no intrusiva, la seguridad básica en un API o aplicación Web
Contenido: Temas principales
- Fundamentos de Spring Security
- Arquitectura general usada por Spring Security
- Configuración básica
- Fundamentos de Autenticación
- Fundamentos de Autorización
- Uso de bases de datos de Usuarios
- Fuente de usuarios desde JDBC
- Acceso a usuarios con JPA y UserDetails
- Cadena de Filtros de seguridad
- Arquitectura
- Ataques CSRF
- Personalización de login y log out
- Control de sesiones concurrentes
- Contraseñas y cifrado
- Evolución
- Qué es el cifrado
- Algoritmos de cifrado soportados en Spring Security
- Validación de contraseñas
- Autenticación por medio de tokens
- Fundamentos de Tokens JWT
- Firmado de tokens
- Inclusión de declaraciones en tokens
- Lectura de tokens
- Implementación de la autenticación
- Filtrado de peticiones no autenticadas
- Cadenas de filtrado múltiples (API web + Aplicación Web convencional)
- OAuth 2
- Qué es el OAuth 2 Authorization Framework
- Configuración de clientes de autenticación OAuth 2
- Personalización de formulario de login
- Personalización de páginas de error
Duración
40 horas
Prerrequisitos
El alumno debe dominar la programación en Java y debe manejar los fundamentos de Spring