En C# y con reclamaciones, es fácil configurar un sistema de inicio de sesión. Me pregunto cómo hacerlo correctamente con React y C# como back-end.
¿Tengo que enviar el nombre de login y password desde el formulario de React con una xmlhttp post request y verificar si existe? ¿Debería entonces setup claims y luego qué? ¿Enviar e identificar como resultado JSON y guardarlo en mi almacenamiento local? Esto no tiene sentido para mí ya que ya hay reclamos. ¿O debería verificar si hay reclamos en cada actualización y, si los hay, devolver al menos la ID a la vista de React?
¿Algunas ideas?
La autenticación común para los backends SPA y REST en la actualidad es el token de portador. Ver RFC 6750 . Una extensión común en el token portador es JWT (tokens web JSON). La página vinculada tiene enlaces a muchas bibliotecas JWT .Net, comoSystem.IdentityModel.Tokens.Jwt .
Su aplicación debe mostrar un formulario de inicio de sesión y luego hacer una POST REST en un punto final de autenticación para obtener el token JWT. Luego, el token puede contener cualquier cosa que desee, incluidas identificaciones y reclamos. El siguiente paso es asegurarse de que su SPA inyecte el token en cada solicitud que realice, para que el back-end lo autentique. Esto, por supuesto, depende completamente de cómo su aplicación interactúa con el back-end, ya que 'reaccionar' no aborda esa parte. Por ejemplo, para Redux ver esto .