Quiero alojar un proyecto de la API web de MVC 4 en Azure. Necesito asegurarme de que se pueda acceder a las API desde cualquier aplicación de terceros y desde cualquier navegador. Implementar una API RESTful que simplemente devuelve JSON me parece una buena idea. Ahora, el mayor desafío para mí es crear un mecanismo de autenticación independiente de la plataforma. No quiero usar el MembershipProvider predeterminado. Estaré usando SSL. Tampoco usaré FormsAuthentication. Todas las llamadas API se realizarán a través de JQuery/AJAX.¿Dónde se almacena el token de autenticación en el lado del cliente?
Estoy tratando de entender la autenticación basada en tokens. Esto es lo que pensé que podía hacer: - El cliente envía sus credenciales de usuario al servidor a través de HTTPS - El servidor autentica el cliente, crea un token, lo guarda en el DB junto con un sello de fecha y hora y un período de vencimiento, y lo envía volver al cliente - El cliente envía el token al servidor cada vez que accede a una API
Ahora, la parte que no entiendo es, ¿dónde almacena el cliente el token? ¿Se guarda en una cookie? Si es así, ¿dónde guardan las aplicaciones de terceros que no son del navegador el token de autenticación? ¿Con qué facilidad es robado el token?