是否应该向用户隐藏MVC 5授权中的用户ID(Guid)?

时间:2015-10-20 18:09:46

标签: security authentication asp.net-mvc-5

我需要知道是否有任何理由让标准MVC 5授权系统中的用户ID(Guid)对用户隐藏。我问的原因是我可以看看是否使用该ID进行个人用户页面引用。

例如,我可以为用户创建个人资料页面,或者拥有该用户可以亲自编辑的帖子。根据我的理解,可以使用外键作为表中的主键。每个用户都可以使用用户ID创建个人资料页面。这意味着用户当然会看到用户ID:

public ActionResult Profile(Guid? id)
{
    //check user etc
}

正如旁注。我宁愿做那种事情而不是改变认证表。你显然必须使用单独的表来做帖子之类的东西。我正在参考用户详细信息等内容。我真的不喜欢扩展用户表。

1 个答案:

答案 0 :(得分:1)

您可以使用Guid ID来识别和查找特定任务的用户,或者您可以使用其他任何对每个用户都唯一的内容。无论你喜欢什么都可以。就个人而言,我会使用每个用户唯一的用户名,因为它会产生更漂亮的URL。但使用Guid没有任何问题,或者它解决了为您提供一些可识别信息以检索正确的用户/个人资料记录的问题。

如果人们知道您正在做的事情,可能会出现一些安全问题,但只要您确保人们无法访问他们不想要的页面并始终在您的sql中使用参数查询应该没问题。

相关问题