IStackWalk.Assert Metodo

Definizione

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 per i chiamanti più in alto nello stack di chiamate. Pertanto, anche se questi chiamanti non dispongono delle autorizzazioni necessarie, possono comunque accedere alle risorse. Un'asserzione è valida solo se il codice che chiama Assert supera il controllo di sicurezza per l'autorizzazione che sta asserendo.

Una chiamata a Assert è valida 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 di tale autorizzazione non avrà esito positivo. Tuttavia, se il codice inferiore nello stack di chiamate chiama Demand tale autorizzazione, viene generata un'eccezione SecurityException quando la procedura dettagliata dello stack raggiunge il codice che ha tentato di chiamare Assert. Ciò si verifica perché al codice chiamato Assert non è stata concessa l'autorizzazione, anche se ha tentato di farlo Assert .

Attenzione

Poiché la chiamata Assert rimuove il requisito che a tutti i codici nella catena di chiamate deve essere concessa l'autorizzazione per accedere alla risorsa specificata, può aprire vulnerabilità di sicurezza se usate in modo non corretto o inappropriato. Pertanto, deve essere usato con grande cautela.

Si applica a

Vedi anche