Freigeben über


IStackWalk.Assert Methode

Definition

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.

public:
 void Assert();
public void Assert ();
abstract member Assert : unit -> unit
Public Sub Assert ()

Ausnahmen

Der aufrufende Code verfügt nicht über Assertion.

Hinweise

Durch aufrufen Assert wird die Berechtigungsprüfung für Anrufer weiter oben in der Aufrufliste beendet. Selbst wenn diese Aufrufer nicht über die erforderlichen Berechtigungen verfügen, können sie daher weiterhin auf Ressourcen zugreifen. Eine Assertion ist nur wirksam, wenn der Code, der aufruft Assert , die Sicherheitsüberprüfung für die Berechtigung besteht, die sie bestätigt.

Ein Aufruf von ist wirksam, Assert bis der aufrufende Code an seinen Aufrufer zurückkehrt oder bis ein nachfolgender Aufruf von die Assert vorherige Assertion ineffektiv rendert. RevertAssert Außerdem entfernt oder RevertAll entfernt ausstehende Assert.

Assert wird für eine Berechtigung ignoriert, die nicht erteilt wird, da eine Anforderung nach dieser Berechtigung nicht erfolgreich ist. Wenn code lower in der Aufrufliste jedoch diese Berechtigung aufruft Demand , wird ausgelöst SecurityException , wenn der Stapellauf den Code erreicht, der versucht hat, aufzurufen Assert. Dies liegt daran, dass dem code, der aufgerufen Assert hat, die Berechtigung nicht erteilt wurde, obwohl er versucht hat.Assert

Achtung

Da durch den Aufruf Assert die Anforderung entfällt, dass dem gesamten Code in der Aufrufkette die Berechtigung für den Zugriff auf die angegebene Ressource gewährt werden muss, können Sicherheitsrisiken bei falscher oder unangemessener Verwendung entstehen. Daher sollte es mit großer Vorsicht verwendet werden.

Gilt für:

Weitere Informationen