【发布时间】:2014-01-28 10:37:11
【问题描述】:
<authorization>
<allow roles = "Admin" />
<deny users="?"/>
</authorization>
角色已分配
protected void FormsAuthentication_OnAuthenticate(Object sender, FormsAuthenticationEventArgs e)
{
if (FormsAuthentication.CookiesSupported == true)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
string roles = string.Empty;
bool check;
using (RealEstateEntities db = new RealEstateEntities())
{
check = db.Admins.Any(model => model.Roles == "Admin" && model.UserName == username);
}
if (check)
roles = "Admin";
else
roles = "User";
// GenericPrincipal userPrincipal = new GenericPrincipal(new GenericIdentity(username,"Forms"), roles);
Context.User = new GenericPrincipal(new GenericIdentity(username, "Forms"), roles.Split(';'));
}
}
}
Global.asax
[Authorize(Roles = "Admin")]
*但它不起作用*
[Authorize(Users = "Abid")]
当我在网络配置中将角色更改为用户时它可以工作 我是 mvc4 的新手,请帮忙!
【问题讨论】:
标签: asp.net .net asp.net-mvc-4