在ASP.NET页面中实现登录的正确方法

时间:2011-11-28 15:29:50

标签: asp.net login implementation

请在ASP.NET页面中考虑这两种登录方式:

  1. 使用windows authentification连接:

    _con = new SqlConnection(@"Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=True");
    _con.Open();
    

    之后我们可以检查cusromer提供的用户名是否存在于Users表中,以便登录成功。

  2. 或使用用户名和密码连接:

    _con = new SqlConnection(@"Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;");
    _con.Open();
    

    之后,只有提供有效用户名和密码的用户才能连接到数据库并获取数据,这涉及在每个客户的数据库中创建用户。

  3. 问题:

    1. 这些在ASP.NET页面中实现登录的方法是否正确?
    2. 如果是,你更喜欢哪种方式,先是一个还是第二个?
    3. 在ASP.NET页面中实现登录的更好方法是什么?

2 个答案:

答案 0 :(得分:2)

特别是方法2真是个坏消息,因为你必须为你网站的每个用户创建一个SQL登录。

我不确定你是否真的想让每个用户都能访问你的数据库,所以要小心。

如果你可以使用Windows身份验证一次性解决大部分(身份验证)问题,那么你真的不需要做太多工作就可以了。

答案 1 :(得分:2)

我个人不会为每个用户使用连接字符串。否则,您将在应用程序和SQL服务器中保持登录的额外麻烦。

为您的应用程序使用一次登录,并使用您自己的登录检查或使用ASP.NET成员资格提供程序:http://msdn.microsoft.com/en-us/library/ff648345.aspx