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.

Brání volajícím vyššímu v zásobníku volání z použití kódu, 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

Deny()Pro aktuální snímek již existuje aktivní.

Poznámky

Důležité

DenyMetoda by měla být použita pouze k ochraně prostředků před náhodným přístupem pomocí plně důvěryhodného kódu. Neměl by se používat k ochraně prostředků před úmyslné zneužití nedůvěryhodným kódem. Například pokud metoda A vydá Deny výjimku pro oprávnění a pak volá metodu B , metoda B může overtly přepsat tím, že Deny vydává Assert . Volaná 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í zahájí kontrolu oprávnění, protože metoda B je bezprostředním volajícím a poté projde zásobníkem, aby zkontrolovala, zda Deny v zásobníku neexistuje nebo není PermitOnly nižší. Metoda B , která se pokouší o přístup k prostředku, může okamžitě zastavit procházení zásobníku pomocí Assert metody. V takovém případě Deny není nikdy zjištěna metoda umístěná v zásobníku podle metody A (volání metody).

Tato metoda brání volajícím vyššímu v zásobníku volání, aby získal přístup k chráněnému prostředku prostřednictvím kódu, který volá tuto metodu, a to i v případě, že těmto volajícím bylo uděleno oprávnění k přístupu. Zásobník volání je obvykle reprezentován při zvětšování, takže metody vyšší v metodách volání zásobníku volání jsou nižší v zásobníku volání.

Deny může omezit zodpovědnost programátora nebo pomoci zabránit náhodným problémům se zabezpečením, protože pomáhá zabránit tomu, aby metoda, která volá, Deny použila k přístupu k prostředku chráněnému odepřeným oprávněním. Pokud metoda volá Deny oprávnění a v případě Demand , že je pro toto oprávnění vyvolána volajícím v dolní části zásobníku volání, tato kontrolu zabezpečení selže, jakmile dosáhne Deny .

Volání Deny je platné, dokud se volající kód nevrátí volajícímu. DenyV rámci snímku může být aktivní pouze jeden. Pokus o volání, Deny když existuje aktivní Deny na snímku, má za následek SecurityException . Pokud RevertDeny RevertAll chcete odebrat aktivní, zavolejte nebo Deny . Deny ignoruje se u oprávnění, které nebylo 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