CA2126 : Les demandes de liaison de type exigent des demandes d'héritage
Élément | Valeur |
---|---|
ID de la règle | CA2126 |
Category | Microsoft.Security |
Modification avec rupture | Rupture |
Cause
Un type non scellé public est protégé avec une demande de liaison, a une méthode substituable, et ni le type ni la méthode n’est protégé par une demande d’héritage.
Notes
Cette règle est déconseillée. Pour plus d’informations, consultez Règles dépréciées.
Description de la règle
Une demande de lien sur une méthode ou son type déclarant nécessite que l’appelant immédiat de la méthode dispose de l’autorisation spécifiée. Une demande d’héritage sur une méthode nécessite une méthode de substitution pour avoir l’autorisation spécifiée. Une demande d’héritage sur un type nécessite une classe dérivative pour avoir l’autorisation spécifiée.
Comment corriger les violations
Pour corriger une violation de cette règle, sécurisez le type ou la méthode avec une demande d’héritage pour la même autorisation que la demande de liaison.
Quand supprimer les avertissements
Ne supprimez aucun avertissement de cette règle.
Exemple
L’exemple suivant montre un type qui enfreint la règle.
using System;
using System.Security.Permissions;
namespace SecurityLibrary
{
[EnvironmentPermission(SecurityAction.LinkDemand, Read = "PATH")]
public class TypesWithLinkDemands
{
public virtual void UnsecuredMethod() {}
[EnvironmentPermission(SecurityAction.InheritanceDemand, Read = "PATH")]
public virtual void SecuredMethod() { }
}
}
Règles associées
CA2108 : Vérifiez la sécurité déclarative dans les types valeur
CA2112 : Les types sécurisés ne doivent pas exposer de champs
CA2122 : N'exposez pas indirectement des méthodes avec des demandes de liaison
CA2123 : Les demandes de liaison de substitution doivent être identiques au composant de base
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour