Paramètres personnalisés dans l'Autorisation c#

0

La question

J'ai un problème, j'ai besoin de faire quelque chose comme ceci dans le but de protéger mon API basée sur l'autorisation de code. Dans le "OnAuthorization" je vérifier le jwtToken, db et à bientôt.

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

Je dois écrire une classe pour gérer 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();
        }
    }
}

Je n'ai pas d'erreur, du succès et bientôt, mais jamais entrer dans les "OnAuthorization". J'ai besoin de modifier d'une certaine façon mon démarrage? J'ai mis:

services.AddAuthentication();

services.AddAuthorization(); 
1

La meilleure réponse

0

Pas particulièrement sûr de vos intentions, mais je n'ai fait quelque chose de proche, dans le temps de passer.

Jetez un oeil à ce code et refactoriser le cas échéant. https://www.c-sharpcorner.com/UploadFile/56fb14/custom-authorization-in-mvc/

2021-11-23 13:07:23

Dans d'autres langues

Cette page est dans d'autres langues

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