【发布时间】:2013-12-05 13:25:54
【问题描述】:
我有一个网站,我使用 C# MVC3 Razor 来做这件事。对于授权和身份验证,我使用 Membership。要进行身份验证,我的代码可以正常工作,但要授权,我无法正常工作。我有一个“管理员”的规则。我是怎么做到的?
web.config
<roleManager enabled="true">
<providers>
<clear />
<add connectionStringName="ApplicationServices" applicationName="/"
name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" />
<add applicationName="/" name="AspNetWindowsTokenRoleProvider"
type="System.Web.Security.WindowsTokenRoleProvider" />
</providers>
</roleManager>
<system.web>
<authorization>
<allow roles="?,*"/>
<deny users="Administrator" />
</authorization>
</system.web>
Controller.cs
[Authorize(Roles = "Administrator")]
public ActionResult Default()
{
if (Session["user"] != null)
return View();
else
return RedirectToAction("Login");
}
【问题讨论】:
-
您需要提供更多信息! Default() 操作是否将您重定向到 Login 操作?您是否检查过以确保 Session["user"] 不为空?你为什么还要检查 Session["user"] 是否为空?
标签: c# asp.net-mvc-3 asp.net-membership