Estoy construyendo un sitio ASP.NET MVC donde quiero usar DotNetOpenAuth para implementar el inicio de sesión de OpenID (estoy abandonando por completo el nombre de usuario/contraseña)Uso de OpenID (a través de DotNetOpenAuth) junto con las funciones de usuario y otras características del proveedor de membresía
Hasta ahora, he estado escribiendo mi código para el sistema de nombre de usuario/contraseña predeterminado con el proveedor de membresía ASP.NET, utilizando el sistema de roles, el sistema de perfil y el sistema de registro básico. Ahora, en mi migración a OpenID, estoy previendo algunos problemas, específicamente con el haciendo interfaz con los controles de membresía proporcionados por el proveedor de membresía de ASP.NET.
En cuanto a la muestra DotNetOpenAuth MVC, veo que las únicas referencias al sistema FormsAuthentication son crear un AuthCookie
y más tarde para llamar a FormsAuthentication.SignOut()
. Por lo tanto, no estoy seguro de si puedo usar las funciones del proveedor de membresía de ASP.NET con este sistema OpenID, aunque otra parte del código de ejemplo llama al User.Identity.IsAuthenticated
.
¿Esta interfaz del sistema de OpenID con el proveedor de ASP.NET membresía? Si no, ¿puedo arreglarlo de alguna manera?
Si lo anterior es completamente imposible, creo que mi próximo curso de acción sería simplemente rodar mis propias tablas de base de datos y escribir manualmente el código para usarlas desde el controlador de mi Cuenta. Me di cuenta de que el Stack Exchange Data Explorer tiene este enfoque, pero ¿sería este el curso de acción correcto?
EDIT: sólo para estar seguro de que estoy usando la terminología correcta, por "proveedor de suscripciones ASP.NET", me refiero al proveedor que utiliza las tablas generadas por la herramienta aspnet_regsql.exe
.
Maravillosa respuesta: lo implementaré hoy. ¡Muchas gracias! –
Y aún puedo usar 'Membership.GetUser()', ¿verdad? –
Sí, aún puede usar Membership.GetUser(). Tan pronto como pase el nombre de usuario a RedirectFromLoginPage, usted es esencialmente igual a lo que hubiera sucedido a través de los controles de inicio de sesión integrados. – jwsample