CodeAccessPermission.Deny Metod

Definition

Varning

Det här API:et är nu inaktuellt.

Varning

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.

Hindrar anropare högre i anropsstacken från att använda koden som anropar den här metoden för att komma åt resursen som anges av den aktuella instansen.

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 ()

Implementeringar

Attribut

Undantag

Det finns redan en aktiv Deny() för den aktuella ramen.

Kommentarer

Important

Metoden Deny bör endast användas för att skydda resurser från oavsiktlig åtkomst med fullständigt betrodd kod. Den bör inte användas för att skydda resurser från avsiktligt missbruk av obetrodd kod. Om metoden A till exempel utfärdar en Deny för en behörighet och sedan anropar metoden Bkan metoden B öppet åsidosätta Deny genom att utfärda en Assert. Den anropade metoden är alltid högre i stacken. Om metoden B försöker komma åt en skyddad resurs börjar därför säkerhetssystemet söka efter behörigheter med den eftersom metoden B är den omedelbara anroparen och går sedan ned i stacken för att bekräfta att det inte finns någon Deny eller PermitOnly lägre i stacken. Metoden B, som försöker komma åt resursen, kan stoppa stackvandringen omedelbart med hjälp Assert av metoden . I så fall identifieras aldrig den Deny placerade stacken efter metod A (anropande metod).

Den här metoden hindrar anropare högre i anropsstacken från att komma åt den skyddade resursen via den kod som anropar den här metoden, även om dessa anropare har beviljats behörighet att komma åt den. Anropsstacken representeras vanligtvis som växande nedåt, så att metoderna högre i anropsstackens anropsmetoder är lägre i anropsstacken.

Deny kan begränsa programmerarens ansvar eller bidra till att förhindra oavsiktliga säkerhetsproblem eftersom det hjälper till att förhindra att metoden som anropar Deny används för att komma åt resursen som skyddas av nekad behörighet. Om en metod anropar Deny en behörighet, och om en Demand för den behörigheten anropas av en anropare lägre i anropsstacken, misslyckas den säkerhetskontrollen när den Denynår .

Anropet till Deny gäller tills den anropande koden återgår till anroparen. Endast en Deny kan vara aktiv på en ram. Ett försök att anropa Deny när en aktiv Deny finns i ramen resulterar i en SecurityException. Anropa RevertDeny eller RevertAll ta bort en aktiv Deny. Deny ignoreras för en behörighet som inte har beviljats eftersom ett krav för den behörigheten inte lyckas.

Anteckningar till arvingar

Du kan inte åsidosätta den här metoden.

Gäller för