Spring Security

Permite configurar la seguridad de la API, Spring Security ofrece:

  • Autenticación y autorización con JWT para aplicaciones de Spring.
  • Es fácil de configurar.
  • Protección antes ataques como Session Fixation, clickjacking, cross site request forgery, entre otros.
  • Configuración por defecto.
  • Filtrar acceso a peticiones.

Para usar Spring Security en nuestra app se debe:

  1. Descargar las dependencias del repositorio de mvnrepository.com.
  2. Se puede personalizar un usuario y contraseña implementando la interface UserDetailsService y su método UserDetails. Además de agregar la anotación @Service a la clase que implementa dicha interface.
  3. Usando la anotación @EnableWebSecurity en un clase, se indica que se habilitará la seguridad.

Generar un JSON Web Token (JWT)

Es un estándar de código abierto basado en JSON para crear tokens de seguridad; la autenticación viaja en el header de la petición. El JWT contiene tres partes:

  1. Header: incluye el algoritmo y el tipo de token que se esta generando.
  2. Payload: se encuentra la información del token (usuario, fecha de vencimiento, etc).
  3. Signature: toma los dos anteriores y los encripta según el algoritmo de encriptación.

Comentarios