Mi piacerebbe avere un'implementazione personalizzata dell'attributo [Autorizza] nei controller.Come creare un'autorizzazione personalizzata in ASP.NET Core (ASP.NET 5)
Questo è quello che ho fatto.
StartupClass in ConfigureServices
services.AddAuthorization(options => { options.AddPolicy("Authorize", policy => { policy.AddRequirements(new MyRequirement()); }); });
MyRequirement
public class MyRequirement : AuthorizationHandler<MyRequirement>, IAuthorizationRequirement { protected override void Handle(AuthorizationContext context, MyRequirement requirement) { //some work //if shloud be authorized context.Succeed(requirement); } }
TestController
[Authorize("Authorize")] [Route("api/[controller]")] public class TestController : Controller { ... }
Cosa mi manca? MyRequirement authorizationhader non viene mai chiamato. Grazie.
sono effettivamente autenticato? L'autorizzazione non entrerà in vigore nelle politiche finché non avrai un'identità. – blowdart
Non lo sono. Sembra che io stia cercando il middleware di autenticazione di base. – Chatumbabub
Intendi basic come in auth HTTP o basic as in, voglio spingere questa identità su ogni richiesta mentre provo? – blowdart