L'autorisation est le processus permettant de décider si un utilisateur authentifié est autorisé à effectuer une action S'il faut effectuer une opération sur une ressource spécifique (ressource API Web). Par exemple, Avoir l’autorisation d’obtenir et de publier des données fait partie de l’autorisation. ce Le processus d'autorisation a lieu avant l'exécution de la méthode d'action du contrôleur Vous donner la flexibilité de décider si nous souhaitons accorder l’accès à la ressource Ou non.
Dans l'API Web ASP.NET, l'autorisation est implémentée à l'aide de filtres d'autorisation Il sera exécuté avant l'exécution de la méthode d'action du contrôleur. API Web Fournit un filtre d'autorisation intégré AuthorizeAttribute. Ce filtre vérifie Si l'utilisateur est authentifié. Sinon, le code d'état HTTP 401 est renvoyé (Non autorisé), aucune action requise.
Nous pouvons appliquer des filtres globalement, au niveau du contrôleur ou au niveau personnel fonctionner.
Pour limiter l'accès à chaque contrôleur d'API Web, ajoutez le filtre AuthorizeAttribute à Liste de filtres globale.
public static void Register(HttpConfiguration config){ config.Filters.Add(new AuthorizeAttribute()); }
Pour restreindre l'accès à un contrôleur spécifique, ajoutez le filtre en tant qu'attribut à contrôleur.
//Toutes les opérations sur le contrôleur nécessitent une autorisation. [Autorisation]
public class StudentsController: ApiController{ public HttpResponseMessage Get(int id) { ... } public HttpResponseMessage Post() { ... } }
Pour restreindre l'accès à une action spécifique, ajoutez cet attribut à la méthode d'action.
public class StudentsController : ApiController{ public HttpResponseMessage Get() { ... } // Require authorization for a specific action. [Authorize] public HttpResponseMessage Post() { ... } }
using System.Web.Http; namespace DemoWebApplication.Controllers{ public class DemoController : ApiController{ [Authorize] public IHttpActionResult Get(){ return Ok(); } } }
Depuis que nous avons ajouté l'attribut d'autorisation sur la méthode d'action, la méthode d'action doit être accessible en utilisant l'autorisation appropriée (comme le jeton du porteur, la clé API, OAuth, etc.). Un accès non autorisé entraînera une réponse 401 Non autorisé comme indiqué ci-dessous.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!