ASP0001 : L'intergiciel d'autorisation est mal configuré
Value | |
---|---|
Identificateur de la règle | ASP0001 |
Catégorie | Utilisation |
Le correctif est cassant ou non cassant | Sans rupture |
Cause
Un appel en désordre à UseAuthorization a été détecté dans le code de démarrage de l’application.
Description de la règle
Pour que l'autorisation soit effective pour les routes des terminaux, l'appel à UseAuthorization
doit apparaître entre les appels à UseRouting
et UseEndpoints
. Dans le cas contraire, la politique de repli, si elle est configurée, sera utilisée pour autoriser toutes les demandes.
Prenez le code suivant :
app.UseStaticFiles();
app.UseAuthorization();
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapDefaultControllerRoute();
});
L’appel à UseAuthorization
apparaît avant UseRouting
et ne prend donc pas en compte le point de terminaison.
Comment corriger les violations
Modifiez l’ordre dans lequel l’appel à UseAuthorization
et UseRouting
est effectué.
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapDefaultControllerRoute();
});
Quand supprimer les avertissements
Il est prudent de supprimer cette règle si l'appel à UseAuthorization
est destiné à autoriser la politique de repli sur toutes les demandes sortantes ou à autoriser des ressources qui ne sont pas acheminées à l'aide du routage des points d'extrémité.