使用IPrinciple.Identity.Name作为dataBase中的键来标识用户的行

时间:2010-05-03 12:32:08

标签: asp.net authentication windows-authentication

我正在编写一个使用Windows身份验证和Asp.Net MVC的小型Intranet应用程序。 我需要在每个用户的数据库中存储各种数据。 据我所知,IPrinciple对象似乎没有像唯一ID那样的东西。所以我想我可以使用User.Identity.Name作为唯一值来识别我的数据库中的行。 这是一个坏主意吗?这种方法有替代方案吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我会创建一个包含标识列作为id的User表。当一个人访问该站点时,我会检查该用户表中该个人唯一ID,如果它存在则读取它,或者如果该用户是新用户则插入新行。

登录名可能很长,这可能会影响您的索引,具体取决于您预期的数据大小。