Fundamentos de Spring Security
Spring Security, autenticación, autorización, SecurityFilterChain, UserDetailsService, PasswordEncoder
1¿Qué es Spring Security?
¿Qué es Spring Security?
Respuesta
Spring Security es un framework de seguridad para aplicaciones Spring que proporciona funcionalidades de autenticación y autorización. Protege las aplicaciones contra ataques comunes (CSRF, XSS, session fixation) y ofrece integración con diversos mecanismos de autenticación (form login, HTTP Basic, OAuth2, JWT). El framework utiliza una cadena de filtros (Security Filter Chain) para interceptar y procesar las solicitudes HTTP antes de que lleguen a los controllers.
2¿Cuál es la diferencia entre autenticación y autorización en Spring Security?
¿Cuál es la diferencia entre autenticación y autorización en Spring Security?
Respuesta
La autenticación verifica la identidad del usuario (¿quién eres?), normalmente mediante username/password, mientras que la autorización verifica los permisos (¿qué puedes hacer?). La autenticación ocurre primero y crea un SecurityContext con la información del usuario. La autorización luego usa esta información para decidir si el usuario puede acceder a un recurso específico. Por ejemplo, un usuario puede autenticarse correctamente pero no estar autorizado a acceder a /admin si su rol es USER y no ADMIN.
3¿Qué es el SecurityContext en Spring Security?
¿Qué es el SecurityContext en Spring Security?
Respuesta
El SecurityContext es un objeto que contiene la información de seguridad del usuario actualmente autenticado, principalmente el objeto Authentication. Se almacena en el SecurityContextHolder y es accesible durante todo el procesamiento de la petición. Tras una autenticación exitosa, Spring Security crea un SecurityContext que contiene un Authentication con los datos del usuario (username, authorities, credentials). Este contexto permite a la aplicación verificar quién es el usuario actual y cuáles son sus permisos.
¿Cómo almacena SecurityContextHolder el SecurityContext de forma predeterminada?
¿Cuál es el rol de la interfaz UserDetails en Spring Security?
+22 preguntas de entrevista
Otros temas de entrevista Spring Boot
Spring Core - IoC & DI
Spring Boot Auto-Configuration
Spring Boot Starters
Application Properties & YAML
Logging con SLF4J y Logback
Spring Boot DevTools
Spring MVC Basics
Spring REST Controllers
Request & Response Handling
Manejo de excepciones
Bean Validation
Fundamentos de Spring Data JPA
Entidades JPA y relaciones
Consultas JPA
Spring Data Repositories
Spring Boot Actuator
Pruebas unitarias con JUnit y Mockito
Testing en Spring Boot
Profiles y Environment
RestTemplate y WebClient
Async y Scheduling
Caching con Spring
Spring WebFlux (Reactive)
Transacciones de Spring
Autenticación y autorización avanzadas
JWT y seguridad stateless
OAuth2 y Authorization Server
Spring Boot y Docker
Microservices con Spring
Spring Cloud Config
Optimización del rendimiento
GraalVM Native Images
Domina Spring Boot para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis