Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

CodeAccessPermission.Deny-Methode ()

 
Hinweis: Diese API ist nun veraltet.

Verhindert, dass übergeordnete Aufrufer in der Aufrufliste auf die von der aktuellen Instanz angegebene Ressource über Code zugreifen, der diese Methode aufruft.

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

[ObsoleteAttribute("Deny is obsolete and will be removed in a future release of the .NET Framework. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public void Deny()

Implementiert

IStackWalk.Deny()

Exception Condition
SecurityException

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

System_CAPS_importantWichtig

Die Deny-Methode sollte nur zum Schutz von Ressourcen vor versehentlichem Zugriff durch voll vertrauenswürdigen Code verwendet werden.Sie sollte nicht verwendet werden, um Ressourcen vor absichtlichem Missbrauch durch nicht vertrauenswürdigen Code zu schützen.Wenn beispielsweise die Methode A ein Deny für eine Berechtigung ausgibt und anschließend die Methode B aufruft, kann Deny von der Methode B einfach durch Ausgeben eines Assert überschrieben werden.Bei der aufgerufenen Methode handelt es sich immer um eine übergeordnete Methode im Stapel.Wenn daher die Methode B versucht, auf eine geschützte Ressource zuzugreifen, überprüft das Sicherheitssystem damit die Berechtigungen, da es sich bei der B-Methode um den unmittelbaren Aufrufer handelt. Anschließend wird der Stapel in Abwärtsrichtung durchlaufen, um sich zu vergewissern, dass keine untergeordnete Deny- oder PermitOnly-Methode im Stapel vorhanden ist.Das Durchlaufen des Stapels kann von der Methode B, die versucht, auf die Ressource zuzugreifen, durch Aufrufen der Assert-Methode ohne Weiteres angehalten werden.In diesem Fall bleibt das Deny unentdeckt, das durch die (aufrufende) Methode A im Stapel abgelegt wurde.

Diese Methode verhindert, dass übergeordnete Aufrufer in der Aufrufliste auf die geschützte Ressource über Code zugreifen, der diese Methode aufruft, selbst wenn ihnen die Berechtigung dazu erteilt wurde.Eine Aufrufliste wird i. d. R. als absteigend geordnet dargestellt, sodass übergeordnete Methoden in der Aufrufliste untergeordnete Methoden aufrufen.

Deny kann die Haftung des Programmierers einschränken oder unbeabsichtigte Sicherheitsprobleme mindern, da die Deny aufrufende Methode nicht mehr für einen Zugriff auf die Ressource verwendet werden kann, die durch die nicht gewährte Berechtigung geschützt wird.Wenn eine Methode Deny für eine Berechtigung aufruft und ein Aufruf von Demand für diese Berechtigung durch einen untergeordneten Aufrufer in der Aufrufliste erfolgt, schlägt die Sicherheitsüberprüfung beim Erreichen von Deny fehl.

Der Aufruf von Deny ist so lange wirksam, bis der aufrufende Code beendet wird und zu dessen Aufrufer zurückkehrt.Für einen Frame kann immer nur ein Deny aktiv sein.Ein Versuch, Deny aufzurufen, wenn ein aktives Deny für den Frame vorhanden ist, führt zu einer SecurityException.Rufen Sie RevertDeny oder RevertAll auf, um ein aktives Deny zu entfernen. Deny wird bei nicht gewährten Berechtigungen ignoriert, da eine Anforderung für die Berechtigung fehlschlagen würde.

Hinweise zur Vererbung:

Diese Methode kann nicht überschrieben werden.

.NET Framework
Verfügbar seit 1.1
Zurück zum Anfang
Anzeigen: