IStackWalk.Assert Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Dichiara che il codice chiamante può accedere alla ricorsa identificata dall'oggetto autorizzazioni corrente, anche se ai chiamanti più in alto nello stack non è stata concessa l'autorizzazione ad accedere alla risorsa.
public:
void Assert();
public void Assert ();
abstract member Assert : unit -> unit
Public Sub Assert ()
Eccezioni
Il codice chiamante non ha Assertion.
Commenti
La chiamata Assert arresta il controllo delle autorizzazioni sui chiamanti più alto nello stack di chiamate. Pertanto, anche se questi chiamanti non dispongono delle autorizzazioni necessarie, possono comunque accedere alle risorse. Un'asserzione è efficace solo se il codice che chiama Assert passa il controllo di sicurezza per l'autorizzazione che sta asserendo.
Una chiamata a Assert è efficace fino a quando il codice chiamante non torna al chiamante o fino a quando una chiamata successiva per Assert rendere inefficace l'asserzione precedente. Inoltre, RevertAssert o RevertAll rimuove un oggetto in sospeso Assert.
Assert viene ignorato per un'autorizzazione non concessa perché una richiesta per tale autorizzazione non avrà esito positivo. Tuttavia, se il codice è inferiore allo stack di chiamate Demand per tale autorizzazione, viene generato un SecurityException valore quando la procedura dettagliata dello stack raggiunge il codice che ha tentato di chiamare Assert. Ciò avviene perché il codice che ha chiamato Assert non è stato concesso l'autorizzazione, anche se ha provato a Assert farlo.
Attenzione
Poiché la chiamata Assert rimuove il requisito che tutto il codice nella catena di chiamate deve essere concesso per accedere alla risorsa specificata, può aprire le vulnerabilità di sicurezza se usato in modo non corretto o inappropriato. Pertanto, deve essere usato con grande cautela.