¿Cuál es la mejor manera de manejar la autenticación en ASP.NET MVC con una base de datos de Universe?

Usamos una base de datos de IBM conocida como Universo que contiene todos nuestros identificadores de usuario, contraseñas e información de perfil en una tabla llamada USERINFO.

¿Puedo usar el proveedor de membresía para conectarme a esta base de datos y autenticar al usuario?

El acceso a la base de datos es en realidad a través de un servicio web, ya que no tenemos una conexión directa a la base de datos.

Tenemos un método de servicio web llamado GetUserInfo que acepta un parámetro de nombre de usuario. El método devolverá la contraseña y la información del perfil.

Como se mencionó anteriormente, deberá crear un proveedor de membresía personalizado que sea bastante sencillo. Creará una clase .NET que hereda de System.Web.Security.MembershipProvider. Existen varios métodos que deben anularse en su clase, pero la mayoría ni siquiera los utiliza el controlador de cuenta MVC. El método principal que querrá anular es ValidateUser (nombre de usuario, contraseña) que permitirá que un usuario inicie sesión. Una vez que haya implementado su clase, deberá registrarlo en web.config, que también es fácil.

Puede encontrar una muestra de un proveedor personalizado aquí: http://msdn.microsoft.com/en-us/library/6tc47t75(VS.80).aspx

Y un tutorial para todo el proceso aquí: http://www.15seconds.com/issue/050216.htm

Tenga en cuenta que el proceso para crear un proveedor personalizado para MVC es el mismo para un sitio web estándar de ASP.NET; sin embargo, MVC no utiliza todos los métodos de la clase MembershipProvider, por lo que es mucho más fácil de implementar.

Tendrás que crear un proveedor personalizado para eso. No es muy difícil, siempre que pueda acceder al servicio web sin problemas.

¿Has investigado la interfaz de UniObjects? Viene con el Universo, pero necesita ser instalado. Tiene acceso completo a todas las funciones de la base de datos. Iniciar sesión, seleccionar archivos, leer, escribir, borrar, crear nuevos archivos, etc.