用户登录后。我将他们的用户名保存到 cookie 中。
FormsAuthentication.SetAuthCookie(userName, createPersistentCookie);
用户有角色,“成员”、“员工”、“经理”
对于那些只允许管理员进入的页面。我现在所做的是使用他们的用户名查询数据库。
GetRoles(用户名)
这会产生很多开销,每次他们访问受角色保护的页面时,我都需要检查数据库。
我想知道是否可以让 SetAutheCookie 设置一些值,而不仅仅是用户名。
我现在所做的是将用户名、角色组合在一个字符串中。
FormsAuthentication.SetAuthCookie(userName + "|" + role.tostring(), createPersistentCookie);
这绝对不是最好的解决方案。