0
我只需要做出MVC3的手動autentication而問題是,當用戶訪問從項目的URL,我已經在基類的代碼:MVC3手冊認證
public class BaseController : Controller
{
private Usuario loggedUser;
protected override void Initialize(System.Web.Routing.RequestContext requestContext)
{
if (requestContext.HttpContext.Request.RawUrl != "/Home/Login")
{
if (requestContext.HttpContext.Session["usuario"] != null)
{
loggedUser = (Usuario)requestContext.HttpContext.Session["usuario"];
ViewBag.nomeUsuario = loggedUser.Nome;
ViewBag.idUsuario = loggedUser.Id;
}
else
{
requestContext.HttpContext.Response.RedirectPermanent("~/Home/Login");
}
}
base.Initialize(requestContext);
}
的問題是,當他們沒有授權我發送重定向但初始化繼續處理請求操作。我認爲驗證是不是一個好地方,因爲我可以刪除inicalize方法。
考慮使用自定義'FilterAttribute',如'AuthorizeAttribute',但創建自己的並將其放在'BaseController'或任何需要控制器的功能上。 –
馬里奧,我看着AuthorizeAttribute,但我需要創建沒有微軟成員資格,沒有使用MS的身份驗證功能。 –
您可以繼承'AuthorizeAttribute'並覆蓋使用您自己邏輯的功能。 –