Condividi tramite


Controllare la protezione imperativa

Aggiornamento: novembre 2007

TypeName

ReviewImperativeSecurity

CheckId

CA2103

Category

Microsoft.Security

Breaking Change

Breaking

Causa

Un metodo utilizza la protezione imperativa e può costruire l'autorizzazione utilizzando le informazioni sullo stato o i valori restituiti che possono cambiare mentre la richiesta è attiva.

Descrizione della regola

La protezione imperativa utilizza oggetti gestiti per specificare autorizzazioni e azioni di protezione durante l'esecuzione del codice, a differenza della protezione dichiarativa che utilizza attributi per archiviare autorizzazioni e azioni in metadati. La protezione imperativa è estremamente flessibile poiché è possibile impostare lo stato di un oggetto autorizzazione e selezionare azioni di protezione utilizzando informazioni non disponibili fino alla fase di esecuzione. Tale flessibilità comporta il rischio che le informazioni della fase di esecuzione utilizzate per determinare lo stato di un'autorizzazione non rimangano invariate mentre l'azione è in corso.

Utilizzare la protezione dichiarativa quando possibile. Le richieste dichiarative sono più semplici da comprendere e possono essere rilevate da strumenti quali Strumento Visualizzazione autorizzazioni (Permview.exe).

Correzione di violazioni

Rivedere le richieste di sicurezza imperative per verificare che lo stato dell'autorizzazione non si basi su informazioni che possono essere modificate mentre l'autorizzazione è in uso.

Esclusione di avvisi

L'esclusione di un avviso da questa regola è un'operazione sicura se l'autorizzazione non è basata sulla modifica di dati. È, tuttavia, preferibile modificare la richiesta imperativa nel relativo equivalente dichiarativo.

Vedere anche

Riferimenti

Strumento Visualizzazione autorizzazioni (Permview.exe)

Altre risorse

Indicazioni per la generazione di codice protetto

Accesso dati