私はmvc3プロジェクトを持っており、ADを使用してユーザーを承認しています。「管理者」の役割を持つユーザーのみがアクセスできるページがあります。
サインインを機能させ、ユーザーを承認して、管理者のみがサイトの管理者部分にアクセスできるようにしました。私が抱えている問題は、ユーザーが管理者でない場合、適切なエラーメッセージを表示できないようです。
これが私のactionFilterattributeです
public class AdminOnlyAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
base.OnActionExecuting(filterContext);
bool isAuthorised = false;
IPrincipal user = filterContext.HttpContext.User;
if (user.Identity.IsAuthenticated)
{
if (user.IsInRole("Admin"))
{
isAuthorised = true;
}
}
if (!isAuthorised)
{
//error message here
}
}
そしてこれは私の管理者用コントローラーです
[AdminOnly]
public ActionResult Index()
{
//admin stuff
}
助けていただければ幸いです、よろしくお願いします