Parámetro personalizado en la Autorización de c#

0

Pregunta

Tengo un problema, necesito hacer algo como esto con el fin de proteger mi API se basa en el permiso de código. En el "OnAuthorization" puedo comprobar la jwtToken, db y pronto.

[AuthorizePermissionByCode("fr")]
[HttpGet]
public int Get()
{
    DO STUFF
}

He de escribir una clase para gestionar 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();
        }
    }
}

Yo no tengo ningún error, a lograr el éxito y pronto, pero nunca entrar en "OnAuthorization". Necesito editar de alguna manera mi startup? Me pone:

services.AddAuthentication();

services.AddAuthorization(); 
1

Mejor respuesta

0

No es particularmente seguro de sus intenciones, pero he hecho algo cercano en el tiempo pase.

Echa un vistazo a este código y refactorizar cuando proceda. https://www.c-sharpcorner.com/UploadFile/56fb14/custom-authorization-in-mvc/

2021-11-23 13:07:23

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................