0
클래스에 사용자 지정 특성을 추가하여 로그인 한 사용자가 admin인지 확인했습니다. 그러나 그것은 작동하지 않습니다. 여기에 사용자가 관리자인지 확인합니다 세션에서 사용자 데이터를 가지고 여기에 일을하고 그 관리자에 있지 않은 경우 다음 거부 페이지에 액세스 리디렉션하고 무엇 내 코드사용자 지정 인증 특성이 작동하지 않습니다.
[AdminAuthorization]
public class UsersController : Controller
{
public ActionResult Index()
{
return View();
}
}
public sealed class AdminAuthorizationAttribute : AuthorizeAttribute
{
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
if(!UserSessionHelper.Instance.IsValid && !UserSessionHelper.Instance.Data.IsAdmin)
{
filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { controller = "Error", action = "AccessDenied" }));
}
}
}
입니다. 그러나 이것은 효과가 없습니다. 모든 사용자에게 페이지가 표시됩니다.
+1 감사하고 작동 .. –