CodeAccessPermission.Deny Metoda

Definice

Upozornění

Toto rozhraní API je teď zastaralé.

Upozornění

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.

Zabrání volajícím v zásobníku volání, aby používali kód, který volá tuto metodu pro přístup k prostředku určenému aktuální instancí.

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

Implementuje

Atributy

Výjimky

Pro aktuální rámec již existuje aktivní Deny() .

Poznámky

Důležité

Tato Deny metoda by měla být použita pouze k ochraně prostředků před náhodným přístupem plně důvěryhodným kódem. Nemělo by se používat k ochraně prostředků před úmyslným zneužitím nedůvěryhodným kódem. Pokud například metoda A vydá Deny oprávnění a pak volá metodu B, metoda B může přepsat Deny přepsání Asserttím, že vydá . Volána metoda je vždy vyšší v zásobníku. Proto pokud se metoda B pokusí o přístup k chráněnému prostředku, systém zabezpečení začne kontrolovat oprávnění s ním, protože metoda B je okamžitý volající, a pak přejde dolů do zásobníku, aby ověřil, že v zásobníku není žádná Deny nebo PermitOnly nižší. Metoda B, která se pokouší získat přístup k prostředku, může zastavit zásobník chůze okamžitě pomocí Assert metody. V takovém případě se Deny umístění do zásobníku metodou A (volající metoda) nikdy nezjistí.

Tato metoda brání volajícím ve vyšší části zásobníku volání v přístupu k chráněnému prostředku prostřednictvím kódu, který tuto metodu volá, i když těmto volajícím bylo uděleno oprávnění pro přístup k němu. Zásobník volání je obvykle reprezentován jako rostoucí, takže metody vyšší ve volání zásobníku volání nižší v zásobníku volání.

Deny může omezit odpovědnost programátora nebo zabránit náhodným problémům se zabezpečením, protože pomáhá zabránit metodě, která volání Deny používají pro přístup k prostředku chráněnému oprávněním odepření. Pokud metoda volá Deny oprávnění a pokud Demand je pro toto oprávnění vyvolána volajícím nižší v zásobníku volání, tato kontrola zabezpečení selže, jakmile dosáhne Deny.

Volání Deny je účinné, dokud se volající kód nevrátí do volajícího. Na snímku může být aktivní jenom jeden Deny . Pokus o volání Deny , pokud Deny aktivní existuje na rámečku, výsledkem je SecurityException. Zavolat RevertDeny nebo RevertAll odebrat aktivní Deny. Deny je ignorován pro oprávnění, které není uděleno, protože požadavek na toto oprávnění nebude úspěšný.

Poznámky pro dědice

Tuto metodu nelze přepsat.

Platí pro