Вы можете легко достичь этого, написав собственный атрибут авторизации:
Public Class CustomAuthorizeAttribute
Inherits AuthorizeAttribute
Protected Overrides Sub HandleUnauthorizedRequest(filterContext As AuthorizationContext)
MyBase.HandleUnauthorizedRequest(filterContext)
filterContext.Controller.TempData("message") = String.Format("You need to be {0} to access this resource", Me.Roles)
End Sub
End Class
И затем украсьте действие контроллера с помощью этого пользовательского атрибута:
<CustomAuthorize(Roles := "Administrator")> _
Public Function AdminPage() As ActionResult
Return View()
End Function
И где-нибудь в вашем представлении входа:
<div><%: TempData("message") %></div>