Freigeben über


CodeAccessPermission.Deny Methode

Definition

Achtung

Diese API ist nun veraltet.

Achtung

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.

Verhindert, dass in der Aufrufliste höher eingestufte Aufrufer den Code verwenden, der diese Methode aufruft, um auf die Ressource zuzugreifen, die von der aktuellen Instanz angegeben wird.

public:
 virtual void Deny();
[System.Obsolete]
public void Deny ();
public void Deny ();
[System.Obsolete("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 ();
[<System.Obsolete>]
abstract member Deny : unit -> unit
override this.Deny : unit -> unit
abstract member Deny : unit -> unit
override this.Deny : unit -> unit
[<System.Obsolete("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.")>]
abstract member Deny : unit -> unit
override this.Deny : unit -> unit
Public Sub Deny ()

Implementiert

Attribute

Ausnahmen

Es ist bereits eine aktive Deny() für den aktuellen Frame vorhanden.

Hinweise

Wichtig

Die Deny -Methode sollte nur verwendet werden, um Ressourcen vor versehentlichem Zugriff durch vollständig vertrauenswürdigen Code zu schützen. Es sollte nicht verwendet werden, um Ressourcen vor absichtlichem Missbrauch durch nicht vertrauenswürdigen Code zu schützen. Wenn die Methode A beispielsweise eine Deny für eine Berechtigung ausgibt und dann die -Methode Baufruft, kann die -Methode B das Deny überschreiben, indem sie einen Assertausgibt. Die aufgerufene Methode ist immer höher im Stapel. Wenn die Methode B versucht, auf eine geschützte Ressource zuzugreifen, beginnt das Sicherheitssystem daher mit der Überprüfung auf Berechtigungen, da die Methode B der unmittelbare Aufrufer ist, und geht dann im Stapel nach unten, um zu bestätigen, dass der Stapel nicht Deny oder PermitOnly niedriger ist. Die Methode B, die versucht, auf die Ressource zuzugreifen, kann den Stapellauf sofort mit der Assert -Methode beenden. In diesem Fall wird die auf dem Deny Stapel nach Methode A platzierte Methode (die aufrufende Methode) nie erkannt.

Diese Methode verhindert, dass Aufrufer höher in der Aufrufliste über den Code, der diese Methode aufruft, auf die geschützte Ressource zugreifen, auch wenn diesen Aufrufern die Berechtigung für den Zugriff erteilt wurde. Der Aufrufstapel wird in der Regel als nach unten wächst dargestellt, sodass Methoden höher im Aufrufstapel aufgerufen werden, die im Aufrufstapel niedriger sind.

Deny kann die Haftung des Programmierers einschränken oder versehentliche Sicherheitsprobleme verhindern, da dadurch verhindert wird, dass die Methode, die aufruft Deny , für den Zugriff auf die Ressource verwendet wird, die durch die verweigerte Berechtigung geschützt ist. Wenn eine -Methode eine Berechtigung aufruft Deny und eine Demand für diese Berechtigung von einem Aufrufer unten in der Aufrufliste aufgerufen wird, schlägt diese Sicherheitsüberprüfung fehl, wenn sie den Denyerreicht.

Der Aufruf von ist wirksam, Deny bis der aufrufende Code an seinen Aufrufer zurückgibt. Nur einer Deny kann in einem Frame aktiv sein. Ein Aufrufversuch, wenn eine aktive Deny im Frame vorhanden ist, führt zu Deny einem SecurityException. Rufen Sie RevertDeny auf, oder RevertAll entfernen Sie eine aktive Deny. Deny wird für eine nicht erteilte Berechtigung ignoriert, da eine Anforderung dieser Berechtigung nicht erfolgreich ist.

Hinweise für Vererber

Sie können diese Methode nicht überschreiben.

Gilt für: