CodeAccessPermission.Assert Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Déclare que le code appelant peut accéder à la ressource protégée par une demande d’autorisation via le code qui appelle cette méthode, même si les appelants situés plus haut dans la pile n’ont pas reçu l’autorisation d’accéder à la ressource. L’utilisation de Assert() peut créer des problèmes de sécurité.
public:
virtual void Assert();
public void Assert ();
abstract member Assert : unit -> unit
override this.Assert : unit -> unit
Public Sub Assert ()
Implémente
Exceptions
Remarques
La pile d’appels est généralement représentée comme augmentant vers le bas, de sorte que les méthodes plus élevées dans la pile d’appels de la pile d’appels sont inférieures dans la pile d’appels. L’appel Assert empêche une marche de pile provenant de la pile d’appels plus bas de continuer vers le haut de la pile d’appels au-delà du code qui appelle cette méthode. Par conséquent, même si les appelants en haut de la pile d’appels ne disposent pas des autorisations requises pour accéder à une ressource, ils peuvent toujours y accéder via le code qui appelle cette méthode sur l’autorisation nécessaire. Une assertion n’est effective que si le code qui appelle Assert passe la case activée de sécurité pour l’autorisation qu’elle affirme.
L’appel à est effectif jusqu’à Assert ce que le code appelant retourne à son appelant. Assert Un seul peut être actif sur un frame. Une tentative d’appel Assert lorsqu’un actif Assert existe sur l’image entraîne un SecurityException. Appelez RevertAssert ou RevertAll pour supprimer un actif Assert.
Assert est ignoré pour une autorisation non accordée, car une demande de cette autorisation n’aboutira pas. Toutefois, si le code inférieur à la pile d’appels appelle Demand cette autorisation, un SecurityException est levée lorsque la procédure de pile atteint le code qui a tenté d’appeler Assert. Cela se produit parce que le code appelé Assert n’a pas obtenu l’autorisation, même s’il a essayé de le faire Assert .
Attention
Étant donné que l’appel Assert supprime l’exigence selon laquelle tout le code de la chaîne d’appels doit être autorisé à accéder à la ressource spécifiée, il peut ouvrir des problèmes de sécurité s’il est utilisé de manière incorrecte ou inappropriée. Par conséquent, il doit être utilisé avec une grande prudence.
Notes pour les héritiers
Vous ne pouvez pas remplacer cette méthode.