Ya tengo una tabla User
en la base de datos de mi aplicación principal con una dirección de correo electrónico (que actuará como nombre de usuario) y una contraseña. Me gustaría autenticar el uso de mi base de datos en lugar de la base de datos de autenticación predeterminada (ASPNETDB).Autenticación ASP.NET MVC utilizando una base de datos personalizada en lugar de ASPNETDB?
Preguntas:
¿Es esta una mala idea? ¿Es una gran lata de gusanos utilizar mi propia base de datos para la autenticación?
¿Cuánto trabajo agrego al hacer esto? Ya tengo un código para hash la contraseña y una consulta que verificará si el correo electrónico y la contraseña coinciden con la base de datos. Entonces, no comenzaría de cero.
¿Qué tendría que hacer para usar mi base de datos en lugar de ASPNETDB? Espero que esto pueda describirse en unos pocos pasos simples, pero si no, ¿podría señalarme una buena fuente?
actualización
Todavía estoy en busca de un poco más de detalle aquí en mi tercera pregunta. ¿Debo escribir mi propio MembershipProvider
? ¿Qué cambios debo hacer en mi archivo web.config? ¿Funcionará el atributo [Authorize]
si escribo mi propia solución? ¿Puedo usar AccountController generado automáticamente con algunas modificaciones menores o básicamente necesito reescribir el controlador de cuenta desde cero?
Tu enlace está roto. – James
Leí en otra publicación de stackoverflow que necesitamos implementar IActionFilter para hacer una autenticación personalizada. ¿Cuál es la forma correcta? – James
@James FWIW aquí hay un enlace de Google en caché: http://webcache.googleusercontent.com/search?q=cache:-Os-ZJxfa_QJ:www.hurryupandwait.io/blog/implementing-custom-membership-provider-and- role-provider-for-authenticating-asp-net-mvc-applications + & cd = 1 & hl = es & ct = clnk & gl = in – Shrayas