ASP.NET IAuthorizationFilter OnAuthorization
Salut, je suis en train de mettre en œuvre une coutume Autorisation filtre
//The Authourization attribute on a controller
public class CustomAdminAuthorizationFilter : IAuthorizationFilter
{
private readonly IAuthentication _authentication;
public SageAdminAuthorizationFilter(IAuthentication authentication)
{
_authentication = authentication;
}
public void OnAuthorization(AuthorizationContext filterContext)
{
bool result = _authentication.Authorize(filterContext.HttpContext);
}
}
Comme vous pouvez le voir sur la OnAuthorization je serai de retour à un résultat qui est vrai ou faux.
De quoi ai-je besoin de mettre à retourner d'où je viens?
EDIT:
Il semble toujours à me jeter directement à la page de connexion
Je ne injecter IAuthetication
this.BindFilter<CustomAdminAuthorizationFilter>(FilterScope.Controller, 0);
Bind<IAuthentication>().To<CustomAuthenticationService>();
Puis-je décorer mon action dans le contrôleur.
[Authorize]
public ActionResult Index()
{
ViewBag.Title = "Welcome";
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}
Dans mon web.config Im en utilisant
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
Cela devrait-il être modifié?
Toute aide serait grandement appréciée.
source d'informationauteur Mark O'Grady
Vous devez vous connecter pour publier un commentaire.
Changer que pour une
Attribute
pas simple unIAuthorizationFilter
Et maintenant, plutôt que d'utiliser
[Authorize]
utiliser votre nouveau[SageAdminAuthorize]
attribut