IStackWalk IStackWalk IStackWalk IStackWalk Interface

Definition

Verwaltet den Stackwalk, über den bestimmt wird, ob alle Aufrufer in der Aufrufliste über die erforderlichen Berechtigungen für den Zugriff auf eine geschützte Ressource verfügen.Manages the stack walk that determines whether all callers in the call stack have the required permissions to access a protected resource.

public interface class IStackWalk
[System.Runtime.InteropServices.ComVisible(true)]
public interface IStackWalk
type IStackWalk = interface
Public Interface IStackWalk
Abgeleitet
Attribute

Hinweise

Teilweise vertrauenswürdiger Code stellt immer ein Sicherheitsrisiko dar.Partially trusted code always presents a security risk. Manchmal kann Sie bearbeitet werden, um Aktionen im Namen von schädlichem Code auszuführen, der nicht über die Berechtigung für den Zugriff auf eine Ressource verfügt.It can sometimes be manipulated to perform actions on behalf of malicious code that does not have permission to access a resource. Auf diese Weise kann bösartiger Code einen höheren Sicherheits Zugriff erreichen als zulässig.In this way, malicious code can achieve higher security access than it should be allowed.

Der Common Language Runtime hilft, verwalteten Code vor diesen Angriffen zu schützen, indem ein Stapel Durchlauf für alle Aufrufe ausgeführt wird.The common language runtime helps protect managed code from these attacks by running a stack walk on all calls. Der Stapel Durchlauf erfordert, dass der gesamte Code in der aufrufsstapel Berechtigung für den Zugriff auf eine geschützte Ressource hat.The stack walk requires that all code in the call stack has permission to access a protected resource. Da sich der Code, der den Angriff versucht, immer irgendwo in der aufrufsstapel befindet, ist er nicht in der Lage, seine eigenen Sicherheits Berechtigungen zu überschreiten.Because the code attempting the attack will always be somewhere in the call stack, it will be unable to exceed its own security permissions.

Methoden

Assert() Assert() Assert() Assert()

Bestätigt, dass der aufrufende Code auf die durch das aktuelle Berechtigungsobjekt identifizierte Ressource zugreifen kann, selbst wenn Aufrufern einer höheren Ebene in der Aufrufliste keine Berechtigung für den Zugriff auf die Ressource erteilt wurde.Asserts that the calling code can access the resource identified by the current permission object, even if callers higher in the stack have not been granted permission to access the resource.

Demand() Demand() Demand() Demand()

Ermittelt zur Laufzeit, ob allen Aufrufern in der Aufrufliste die vom aktuellen Berechtigungsobjekt angegebene Berechtigung erteilt wurde.Determines at run time whether all callers in the call stack have been granted the permission specified by the current permission object.

Deny() Deny() Deny() Deny()

Bewirkt, dass jedes Demand() für das aktuelle Objekt fehlschlägt, das den Aufrufcode durchläuft.Causes every Demand() for the current object that passes through the calling code to fail.

PermitOnly() PermitOnly() PermitOnly() PermitOnly()

Bewirkt, dass jedes Demand() für alle Objekte außer dem aktuellen Objekt fehlschlägt, das den aufrufenden Code durchläuft, selbst wenn übergeordnetem Code in der Aufrufliste eine Zugriffsberechtigung für andere Ressourcen gewährt wurde.Causes every Demand() for all objects except the current one that passes through the calling code to fail, even if code higher in the call stack has been granted permission to access other resources.

Gilt für: