asp.net-core
Autorización
Buscar..
Autorización simple
La autorización en el núcleo de asp.net es simplemente AuthorizeAttribute
[Authorize]
public class SomeController : Controller
{
public IActionResult Get()
{
}
public IActionResult Post()
{
}
}
Esto solo permitirá que un usuario registrado acceda a estas acciones.
o usa lo siguiente para limitar solo una acción
public class SomeController : Controller
{
public IActionResult Get()
{
}
[Authorize]
public IActionResult Post()
{
}
}
Si desea permitir que todos los usuarios accedan a una de las acciones, puede usar AllowAnonymousAttribute
[Authorize]
public class SomeController: Controller
{
public IActionResult Get()
{
}
[AllowAnonymous]
public IActionResult Post()
{
}
}
Ahora se puede acceder a la Post
por cualquier usuario. AllowAnonymous
siempre es una prioridad para autorizar, por lo que si un controlador está configurado en AllowAnonymous
, todas sus acciones son públicas, independientemente de si tienen un AllowAnonymous
AuthorizeAttribute
o no.
Hay una opción para configurar todos los controladores para que requieran solicitudes autorizadas -
services.AddMvc(config =>
{
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
config.Filters.Add(new AuthorizeFilter(policy));
})
Esto se hace agregando una política de autorización predeterminada a cada controlador: cualquier atributo Authorize
/ AllowAnonymous
sobre un controlador / acción anulará esta configuración.