Contenido del curso
Configuración de seguridad
- 5

Configuración de Seguridad con Spring Security y Basic Authentication
06:32 min - 6

Cómo funciona el BasicAuthenticationFilter por dentro
11:50 min - 7

Deshabilitar CSRF en Spring Security con JWT
07:28 min - 8

Configuración global de CORS en Spring
12:11 min - 9

Configuración de Reglas de Acceso en Spring Security
07:45 min - 10

Creación de usuarios personalizados en Spring Security
07:06 min - 11

Creación y Gestión de Roles y Permisos en Aplicaciones Web
05:48 min
Autenticación con BD
Seguridad con JWT
Próximos pasos
Seguridad en Spring: autenticación y autorización
Resumen
La seguridad dejó de ser un extra y se volvió un requisito básico en cualquier aplicación web moderna. Con Spring Security puedes proteger aplicaciones construidas en Java y Spring validando identidad y privilegios de cada usuario, evitando así una de las vulnerabilidades más críticas según OWASP.
¿Por qué la seguridad es innegociable en aplicaciones web?
Cualquier aplicación, por sencilla que sea, necesita responder dos preguntas antes de procesar una petición: ¿quién eres? y ¿qué puedes hacer aquí? Esas dos validaciones, autenticación y autorización, son la base de todo lo que vas a construir con Spring Security [0:55].
Piensa en un caso cotidiano. Si Alejandro inicia sesión y pide consultar sus propios movimientos, la aplicación valida que esté autenticado, revisa sus privilegios y le entrega la información sin problema. Hasta ahí, todo fluye.
Ahora cambia el actor. Si Pedro entra autenticado pero intenta consultar los movimientos de Alejandro, la historia es distinta. Pedro pasa la primera validación, pero falla la segunda: no tiene privilegios sobre esa información. La aplicación responde con un error 403, que significa autenticado sí, autorizado no [1:45].
¿Qué significa un error 403 en una aplicación web? Es la respuesta que indica que el usuario está autenticado, pero no tiene los permisos necesarios para ejecutar la acción solicitada. No es un problema de login, es un problema de privilegios.
¿Qué es OWASP y cuál es su top 10 de vulnerabilidades?
Esta validación aparentemente simple que acabas de ver es, según OWASP, la vulnerabilidad número uno de las aplicaciones web modernas. Y aquí viene lo interesante: ignorarla es lo que abre la puerta a la mayoría de los ataques.
OWASP mantiene un proyecto llamado Top 10, donde lista los principales riesgos de seguridad en aplicaciones web. Su última actualización es de 2021, y puedes comparar cómo han evolucionado los riesgos desde 2017 hasta hoy [2:25].
El riesgo que vimos en el ejemplo de Alejandro y Pedro tiene nombre propio dentro de ese top: broken access control. En la página oficial de OWASP encuentras, para cada riesgo:
- Una descripción clara del problema.
- Un resumen ejecutivo del impacto.
- Recomendaciones para prevenirlo.
- Escenarios reales de cómo ocurre el ataque.
Revisar esa lista te da contexto antes de escribir una sola línea de código de seguridad.
¿Qué es broken access control? Es la falla que permite a un usuario autenticado acceder a recursos o acciones que no le corresponden según su rol o privilegios. OWASP la ubica como la vulnerabilidad número uno desde 2021.
¿Cómo te ayuda Spring Security a prevenir estos ataques?
Spring Security es el módulo del ecosistema Spring que te permite implementar autenticación y autorización de forma intuitiva, sin tener que reinventar la rueda en cada proyecto. A lo largo del curso vas a ver cómo configurarlo para protegerte de varias de las vulnerabilidades del top 10 de OWASP.
Antes de avanzar, conviene que tengas bases de Spring. Si aún no has trabajado con el framework, vale la pena pasar primero por el curso de Spring disponible en la plataforma, porque aquí vamos a asumir que ya manejas conceptos como inyección de dependencias y configuración de aplicaciones.
¿Qué necesito saber antes de aprender Spring Security? Conocimientos básicos de Java y Spring, especialmente cómo se configura una aplicación, cómo funcionan los controladores y la inyección de dependencias.
Cuéntame en los comentarios qué tipo de aplicación quieres proteger y qué vulnerabilidad te preocupa más resolver.