ログインしているユーザーが管理者かどうかを確認するために、クラスにカスタム権限属性を追加しました。しかし、それは機能していません。これが私のコードです
[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" }));
}
}
}
セッションからユーザーデータを取得して、ユーザーが管理者であるかどうかを確認し、管理者でない場合はアクセス拒否ページにリダイレクトします。しかし、これは機能していません。すべてのユーザーに対して、ページが表示されています。