Ho un problema, ho bisogno di fare qualcosa di simile a questo, al fine di proteggere la mia API basata sul codice di autorizzazione. In "OnAuthorization" io controllo il jwtToken, db e presto.
[AuthorizePermissionByCode("fr")]
[HttpGet]
public int Get()
{
DO STUFF
}
Devo scrivere una classe per gestire AuthorizePermissionByCode
namespace CustomAuthorizeAttribute
{
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class AuthorizePermissionByCode : AuthorizeAttribute, IAuthorizationFilter
{
public string Permissions { get; set; } //Permission string to get from controller
public AuthorizePermissionByCode(string Permissions)
{
this.Permissions = Permissions;
}
public override void OnAuthorization(AuthorizationContext filterContext)
{
filterContext.Result = new HttpUnauthorizedResult();
}
}
}
Non ho nessun errore, costruire il successo e presto, ma non entrano mai in "OnAuthorization". Ho bisogno di modificare in qualche modo il mio avvio? Io ho messo:
services.AddAuthentication();
services.AddAuthorization();