IStackWalk Interface

Définition

Gère la procédure de pile qui détermine si tous les appelants de la pile des appels disposent des autorisations requises pour accéder à une ressource protégée.

public interface class IStackWalk
public interface IStackWalk
[System.Runtime.InteropServices.ComVisible(true)]
public interface IStackWalk
type IStackWalk = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type IStackWalk = interface
Public Interface IStackWalk
Dérivé
Attributs

Remarques

Avertissement

La sécurité d’accès du code (CAS) a été déconseillée dans toutes les versions du .NET Framework et de .NET. Les versions récentes de .NET n’honorent pas les annotations CAS et produisent des erreurs si les API liées à CAS sont utilisées. Les développeurs doivent rechercher d’autres moyens d’accomplir des tâches de sécurité.

Le code partiellement approuvé présente toujours un risque de sécurité. Il peut parfois être manipulé pour effectuer des actions pour le compte de code malveillant qui n’a pas l’autorisation d’accéder à une ressource. De cette façon, le code malveillant peut obtenir un accès de sécurité plus élevé qu’il ne doit être autorisé.

Le Common Language Runtime permet de protéger le code managé contre ces attaques en exécutant une procédure pas à pas sur toutes les appels. La procédure de pile nécessite que tout le code de la pile des appels ait l’autorisation d’accéder à une ressource protégée. Étant donné que le code qui tente l’attaque sera toujours quelque part dans la pile des appels, il ne pourra pas dépasser ses propres autorisations de sécurité.

Méthodes

Nom Description
Assert()

Affirme que le code appelant peut accéder à la ressource identifiée par l’objet d’autorisation actuel, même si les appelants plus haut dans la pile n’ont pas reçu l’autorisation d’accéder à la ressource.

Demand()

Détermine au moment de l’exécution si tous les appelants de la pile des appels ont reçu l’autorisation spécifiée par l’objet d’autorisation actuel.

Deny()

Provoque l’échec de tous les Demand() objets actuels qui passent par le code appelant.

PermitOnly()

Provoque l’échec de tous Demand() les objets pour tous les objets à l’exception de celui en cours qui passe par le code appelant, même si le code supérieur dans la pile des appels a été autorisé à accéder à d’autres ressources.

S’applique à