- Este repositorio contiene un único endpoint que devuelve datos en JSON.
- Cuál es el endpoint? Qué datos devuelve?
- Comprueba si puedes acceder al endpoint desde un navegador
- Añade la siguiente dependencia a tu proyecto para activar la seguridad de SpringBoot
'org.springframework.boot:spring-boot-starter-security'
Intenta ahora volver a acceder al endpoint. Más información...
- Vuelve a lanzar el servidor, pero antes de introducir el nombre de usuario y contraseña, abre el inspector de red (network) de tu navegador.
- Examina los
Headers
de la peticiónGET /books
. - Como puedes observar, una vez introducimos usuario y contraseña la aplicación no nos los vuelve a pedir. Dónde crees que se almacena esta información?
-
Abre este tutorial y copia las clases
MyBasicAuthenticationEntryPoint
yCustomWebSecurityConfigurerAdapter
en tu proyecto. Arregla los errores que pueda haber en el código y vuelve a lanzar el servidor.- ❗️Puedes eliminar este código de
CustomWebSecurityConfigurerAdapter
ya que no tenemos ningúnCustomFilter
:
http.addFilterAfter(new CustomFilter(), BasicAuthenticationFilter.class);
- ❗️Puedes eliminar este código de
-
Examina el código que has añadido: Cuál es el nombre y la contraseña?
-
Examina los headers de las peticiones http que hacemos a la aplicación. Dónde se almacena el nombre de usuario y contraseña? Más información...
-
Haz un login incorrecto y examina la respuesta (con error
401
). Qué información nos proporcionan losHeaders
de la respuesta?