代码之家  ›  专栏  ›  技术社区  ›  Mike Roosa

在具有Universe数据库的ASP.NET MVC中,处理身份验证的最佳方法是什么?

  •  3
  • Mike Roosa  · 技术社区  · 17 年前

    我们使用一个名为universe的IBM数据库,该数据库在一个名为userinfo的表中保存所有用户ID、密码和配置文件信息。

    我可以使用成员资格提供程序连接到此数据库并对用户进行身份验证吗?

    数据库访问实际上是通过Web服务进行的,因为我们没有直接连接到数据库。

    我们有一个名为getuserinfo的Web服务方法,它接受一个用户名参数。该方法将返回密码和配置文件信息。

    3 回复  |  直到 13 年前
        1
  •  10
  •   Dave Weaver    17 年前

    如前所述,您需要创建一个自定义的成员资格提供者,这是非常简单的。您将创建从System.Web.Security.MembershipProvider继承的.NET类。您的类中有几个方法需要重写,但大多数方法甚至都没有被MVC帐户控制器使用。您要重写的主要方法是validateuser(用户名、密码),它将让用户登录。实现类之后,您需要在web.config中注册它,这也很容易。

    您可以在此处找到自定义提供程序的示例: http://msdn.microsoft.com/en-us/library/6tc47t75(VS.80).aspx

    以下是整个过程的教程: http://www.15seconds.com/issue/050216.htm

    请记住,为MVC生成自定义提供程序的过程对于标准ASP.NET网站是相同的,但是MVC没有充分利用MembershipProvider类的所有方法,因此更容易实现。

        2
  •  0
  •   Will    17 年前

    您必须为此创建自定义提供程序。这并不难,只要你能在没有问题的情况下访问Web服务。

        3
  •  0
  •   CurtTampa    16 年前

    您调查过UniObjects接口吗?它随Universe提供,但需要安装。它可以完全访问所有数据库功能。登录、选择文件、读取、写入、删除、创建新文件等。