(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

CodeAccessPermission.Assert-Methode

Deklariert, dass der aufrufende Code selbst dann auf die durch eine Berechtigungsanforderung geschützte Ressource über den diese Methode aufrufenden Code zugreifen kann, wenn übergeordnete Aufrufer in der Aufrufliste keine Zugriffsberechtigung für die Ressource besitzen. Die Verwendung von Assert kann zu Sicherheitsproblemen führen.

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

public void Assert()

Implementiert

IStackWalk.Assert()

AusnahmeBedingung
SecurityException

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

– oder –

Es ist bereits ein aktives Assert für den aktuellen Frame vorhanden.

Eine Aufrufliste wird i. d. R. als absteigend geordnet dargestellt, sodass übergeordnete Methoden in der Aufrufliste untergeordnete Methoden aufrufen. Der Aufruf von Assert verhindert, dass bei einem Stackwalk von einem untergeordneten Bereich der Aufrufliste aus der Bereich des Codes in der Liste überschritten wird, der diese Methode aufruft. Wenn daher übergeordnete Aufrufer in der Aufrufliste nicht über die Zugriffsberechtigung für eine Ressource verfügen, können sie auf diese dennoch über den Code zugreifen, der die Methode für die erforderliche Berechtigung aufruft. 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.

Der Aufruf von Assert ist so lange wirksam, bis der aufrufende Code beendet wird und zu dessen Aufrufer zurückkehrt. Für einen Frame kann immer nur ein Assert aktiv sein. Ein Versuch, Assert aufzurufen, wenn ein aktives Assert für den Frame vorhanden ist, führt zu einer SecurityException. Rufen Sie RevertAssert oder RevertAll auf, um ein aktives Assert zu entfernen.

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.

WarnhinweisVorsicht

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 Sicherheitsprobleme entstehen. Verwenden Sie diese Aufrufe daher mit größter Vorsicht.

Hinweise zur Vererbung

Diese Methode kann nicht überschrieben werden.

.NET Framework

Unterstützt in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

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

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft