Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何使用表单身份验证筛选显示的数据?_Asp.net Mvc_Forms Authentication - Fatal编程技术网

Asp.net mvc 如何使用表单身份验证筛选显示的数据?

Asp.net mvc 如何使用表单身份验证筛选显示的数据?,asp.net-mvc,forms-authentication,Asp.net Mvc,Forms Authentication,我在ASP.NET MVC应用程序中使用表单身份验证和SimpleMembership作为登录功能 现在,我想根据登录用户所属的部门筛选显示给用户的内容 起初我考虑使用User.Identity.Name,但由于我希望筛选的数据不包含用户名,而是包含部门id,因此我必须对每个筛选(请求)进行额外的连接 这导致我通过添加DepartmentId来定制身份/主体。这是正确的做法吗?在此处存储此类信息(授权cookie)是否安全?我应该将其添加到身份或主体中吗?我已经看到了定制这两者的例子,所以我有点

我在ASP.NET MVC应用程序中使用表单身份验证和SimpleMembership作为登录功能

现在,我想根据登录用户所属的部门筛选显示给用户的内容

起初我考虑使用User.Identity.Name,但由于我希望筛选的数据不包含用户名,而是包含部门id,因此我必须对每个筛选(请求)进行额外的连接


这导致我通过添加DepartmentId来定制身份/主体。这是正确的做法吗?在此处存储此类信息(授权cookie)是否安全?我应该将其添加到身份或主体中吗?我已经看到了定制这两者的例子,所以我有点困惑。我看到的示例不是关于过滤,而是显示一些额外的信息,如电子邮件。

是的,这是正确的位置,只要您对cookie中的值进行加密,就可以了。使用这种方法是标准做法,您可以自定义标识,然后在授权例程中将其分配给httpcontext用户

这允许您访问它,并将其标记到您发出的任何db请求中,这样您就可以确保发送回的任何数据都可以供该用户查看

oswap关于安全性的建议之一是检查每个数据请求,以确保该用户能够有效地看到它