自己寫一個訪問的權限? 如果用戶已經登陸 但是權限不夠就 跳轉到一個頁面提示沒有權限訪問?? 但是 我寫好之后只能跳轉到登陸頁面? 再有就是按照如下的代碼 能跳轉大頁面 但是 即使是有權限的用戶也跳轉到這個頁面 也就是說 無論什么情況都跳到這個頁面? 有權限的用戶也不能繼續的訪問
求解決? 在線等using System;?? using System.Collections.Generic;?? using System.Linq;?? using System.Web;?? using System.Web.Mvc;using System.Web.Security;using MvcCompany.Models;
namespace AuthTest.Models{??? public class MyAuthAttribute : AuthorizeAttribute??? {??????? // 只需重載此方法,模擬自定義的角色授權機制?? ??????? protected override bool AuthorizeCore(HttpContextBase httpContext)??????? {??????????? string currentRole = GetRole(httpContext.User.Identity.Name);??????????? if (Roles.Contains(currentRole))??????????? ??????????????? return true;??????????????? return base.AuthorizeCore(httpContext);? ??????? }
??????? public override void OnAuthorization(AuthorizationContext filterContext)??????? {??????????? base.OnAuthorization(filterContext);??????????? if (filterContext.HttpContext != null)??????????? {??????????????? RedirectResult redirect = new RedirectResult("/Account/MyAuth");??????????????? filterContext.Result = redirect;??????????????? return;??????????? }??????????? ??????? }??? ??????? //返回用戶對應的角色, 在實際中, 可以從SQL數據庫中讀取用戶的角色信息?? ??????? private string GetRole(string UserName)??????? {??????????? switch (UserName)??????????? {??????????????? case "aaaaaa": return "Admin";??????????????? default: return "Fool";??????????? }??????? }
??? }
}
- 4 回答
- 0 關注
- 325 瀏覽
添加回答
舉報
0/150
提交
取消