如何使用Windows身份验证自动维护已由IIS 7.0进行身份验证的用户表

时间:2010-02-27 00:44:08

标签: asp.net-mvc windows-authentication

我想构建和维护一个用户表。访问ASP.NET MVC站点的所有用户都通过Windows身份验证进行身份验证,因此他们必须拥有唯一的用户名。我正在抓取用户名:

System.Web.HttpContext.Current.User.Identity.Name

我觉得我可以用两种方式。

  1. 无论何时访问用户表或引用用户表的任何表,我都可以添加用户(如果不存在)。如果不检查用户的存在,我担心这可能非常容易出错。
  2. 用户访问网站上的任何页面时,检查该用户是否存在该用户,如果该用户不存在,请添加该用户。这可能会产生很多开销,因为每次更改页面都会检查。
  3. 我想知道哪些是更好的解决方案,以及如何实施它们。

1 个答案:

答案 0 :(得分:1)

我认为更好的方式与选项二类似。
用户访问页面时,请检查会话变量以查看是否针对数据库检查了该用户。如果会话变量不存在,请检查数据库中是否存在该用户,必要时将用户添加到表中,然后设置会话变量。
这样,您就不必在每次请求时都按下DB。