Acabo de comprar la seguridad de la API web Pro ASP.NET de Badri L en un intento por aprender los medios más económicos para proteger mi WebAPI, en términos de tiempo de implementación. No tengo experiencia con la seguridad y estoy buscando una solución que sea "lo suficientemente buena" para que la aplicación se pueda utilizar sin enviar texto sin formato por el cable.
La aplicación se basa en .NET Web API y sirve de JSON a clientes HTML / JS SPA. Eventualmente, los clientes requerirán sus propias claves API.
Por ahora, necesito permitir que los usuarios inicien sesión de forma segura y se registren con un nombre de usuario / contraseña de estos clientes.
Comencé a implementar la Autenticación Básica según el Capítulo 8 "Factores de Conocimiento" en el libro mencionado anteriormente debido a la simplicidad, sin embargo, parece que esto obliga a los clientes a usar un cuadro de diálogo del navegador para recopilar las credenciales, en lugar de recopilarlas desde un formulario.
¿Hay alguna forma de evitar esto y usar un formulario? Si no, ¿qué sugeriría usted como una solución de seguridad alternativa?
Estaba considerando la autenticación de formularios, pero no estoy seguro de cuáles son los pros / contras en el contexto de WebAPI; No hay mención de eso en el libro.