No use la autenticación básica, es un esquema de autenticación antiguo que no proporciona ningún beneficio sobre la administración de sesión basada en token o cookie. Cuando se utilizan credenciales de autenticación básicas, sirven como identificador de sesión, por lo tanto, deben enviarse en cada solicitud. Esto tiene dos grandes desventajas:
-
Las credenciales se almacenan en la memoria caché del navegador en texto sin formato que se puede abusar en algunos escenarios
-
La sesión no se puede terminar ya que se adjunta a las credenciales del usuario y las credenciales no tienen un concepto de caducidad como JWT, las cookies u otro tipo de tokens (Nota: cuando digo caducidad no me refiero a caducidad de contraseña como "Es necesario cambiar la contraseña cada 3 meses" pero las credenciales como esquema de autenticación)
Incluso si intenta utilizar la autenticación básica para enviar una cookie de sesión, los navegadores seguirán enviando las credenciales en el encabezado de autorización.
Si está utilizando AJAX, mi consejo sería seguir con la autenticación basada en cookies o migrar a JWT. Tenga en cuenta que si se llama a la API desde un nombre de host diferente (fe www.example.com llama a una api en api.example.com), el correspondiente Los encabezados CORS para permitir las credenciales deben configurarse correctamente