Tengo una API para asegurar. Potencialmente, habrá dos tipos de consumidores de esta API: nuestra propia aplicación de página única y servicios de terceros que se integrarán con ella.
He leído que, en general, las cookies no están favorecidas para las API REST, es mejor usar campos de encabezado. Quizás esto es sólo una convención.
Las cookies seguras son un mejor lugar para guardar el token de autenticación en un SPA. Evita que se obtengan mediante un ataque de script entre sitios. Además, si el SPA abre una nueva ventana / pestaña, el sessionStorage no fluye a través de él, lo que hace que el usuario tenga que iniciar sesión nuevamente. Puedes usar localStorage, pero no es una buena idea mantener los tokens de autenticación allí, ya que persiste.
¿Debo hacer que el filtro de autenticación en el lado del servidor acepte una cookie o un campo de encabezado? Pruebe primero la cookie, y si no está allí, intente el campo de encabezado? Las cookies serían utilizadas por los SPA y los campos de encabezado por otros consumidores de API. O, ¿sería mejor ir con una sola forma de transmitir el token de autenticación?