Freigeben über


IStackWalk.Assert-Methode

Bestimmt, dass der aufrufende Code selbst dann auf die durch das aktuelle Berechtigungsobjekt angegebene Ressource zugreifen kann, wenn übergeordnete Aufrufer in der Aufrufliste keine Zugriffsberechtigung für die Ressource besitzen.

Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Sub Assert
'Usage
Dim instance As IStackWalk

instance.Assert
void Assert ()
void Assert ()
void Assert ()
function Assert ()

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der Aufrufcode verfügt nicht über SecurityPermissionFlag.Assertion.

Hinweise

Der Aufruf von Assert beendet die Berechtigungsprüfung für übergeordnete Aufrufer in der Aufrufliste. Diese Aufrufer können daher auch ohne die vorgeschriebenen Berechtigungen auf die Ressourcen zugreifen. Eine Assertion ist nur wirksam, wenn die Sicherheitsüberprüfung der Berechtigung des Codes, in dem Assert für die Berechtigung aufgerufen wird, erfolgreich ist.

Ein Aufruf von Assert ist so lange wirksam, bis der aufrufende Code beendet wird und zu dessen Aufrufer zurückkehrt oder bis ein nachfolgender Aufruf von Assert die vorhergehende Assertion aufhebt. Zusätzlich entfernt RevertAssert oder RevertAll ein ausstehendes Assert.

Assert wird bei nicht gewährten Berechtigungen ignoriert, da eine Anforderung für die Berechtigung fehlschlagen würde. Wenn jedoch untergeordneter Code in der Aufrufliste Demand für die Berechtigung aufruft, wird eine SecurityException ausgelöst, sobald beim Stackwalk der Code erreicht wird, in dem der Aufruf von Assert versucht wurde. Die Ausnahme wird ausgelöst, da ein Aufruf von Assert erfolgt, obwohl dem Assert aufrufenden Code die entsprechende Berechtigung nicht gewährt wurde.

Warnung

Da durch den Aufruf von Assert nicht mehr der gesamte Code in der Aufrufliste über eine Berechtigung für den Zugriff auf die angegebene Ressource verfügen muss, können bei falscher oder unsachgemäßer Verwendung Sicherheitsrisiken entstehen. Verwenden Sie diese Aufrufe daher mit größter Vorsicht.

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

IStackWalk-Schnittstelle
IStackWalk-Member
System.Security-Namespace

Weitere Ressourcen

Verwenden der Assert-Methode
Außerkraftsetzen von Sicherheitsüberprüfungen