IStackWalk.Assert Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Potvrzuje, že volající kód má přístup k prostředku identifikovanému aktuálním objektem oprávnění, i když volajícím výše v zásobníku nebylo uděleno oprávnění pro přístup k prostředku.
public:
void Assert();
public void Assert ();
abstract member Assert : unit -> unit
Public Sub Assert ()
Výjimky
Volající kód nemá Assertion.
Poznámky
Volání Assert zastaví kontrolu oprávnění u volajících výše v zásobníku volání. Proto i když tito volající nemají požadovaná oprávnění, stále mají přístup k prostředkům. Kontrolní výraz je účinný pouze v případě, že kód, který volá Assert , projde kontrolou zabezpečení pro oprávnění, které uplatňuje.
Volání je účinné, Assert dokud volající kód nevrátí do volajícího nebo do následného volání, aby předchozí Assert kontrolní výraz neúčinný. RevertAssert Také nebo RevertAll odebere čekající Assert.
Assert se ignoruje, pokud není oprávnění uděleno, protože požadavek na toto oprávnění nebude úspěšný. Pokud však kód nižší v zásobníku volání volá Demand pro toto oprávnění, SecurityException vyvolá se při procházení zásobníku dosáhne kódu, který se pokusil volat Assert. K tomu dochází, protože volaný Assert kód nemá udělené oprávnění, i když se o Assert to pokusil.
Upozornění
Vzhledem k tomu, že volání Assert odebere požadavek, aby veškerý kód v řetězci volání měl udělené oprávnění pro přístup k zadanému prostředku, může v případě nesprávného nebo nevhodného použití otevřít ohrožení zabezpečení. Proto by měl být používán s velkou opatrností.