Ya tengo el inicio de sesión de formulario y la autenticación básica trabajando codo a codo con la ayuda de DelegatingAuthenticationEntryPoint
.Manejo de formularios y autenticación básica HTTP con diferentes fuentes
Lo que trato de hacer es hacer que los usuarios ingresen a través del formulario de inicio de sesión para ser autenticados contra el criterio "A", y hacer que los usuarios accedan a las solicitudes de autenticación básica contra el criterio "B".
Algunos de los recursos de la aplicación se exponen a través de un servicio RESTful (accesible a través de la autenticación básica). En lugar de hacer que los usuarios ingresen sus propias credenciales para realizar una llamada de servicio REST, pueden ingresar pares de clave/valor generados para su uso exclusivo con el servicio REST que luego puede ser revocado por el usuario o por el administrador de la aplicación.
Preferiría compartir la mayor cantidad posible de mis beans de seguridad entre los dos métodos de autenticación. Sé que necesitaré UserDetailsService
s por separado ya que el formulario de inicio de sesión consulta mi tabla users
, y la autenticación básica consultará mi tabla service_credentials
.
¿Cuál es la forma correcta de lograr este tipo de configuración en Spring Security?
Excelente! Mi DelegatingAuthenticationEntryPoint usa algunos RequestMatchers. –