Share via


CA2103: Controllare la sicurezza imperativa

Articolo Valore
ID regola CA2103
Category Microsoft.Security
Modifica Interruzione

Causa

Un metodo utilizza la sicurezza imperativa e potrebbe costruire l'autorizzazione tramite le informazioni sullo stato o i valori restituiti che possono essere modificati mentre la richiesta è attiva.

Nota

Questa regola è stata deprecata. Per altre informazioni, vedere Regole deprecate.

Descrizione regola

La sicurezza imperativa usa oggetti gestiti per specificare autorizzazioni e azioni di sicurezza durante l'esecuzione del codice, rispetto alla sicurezza dichiarativa, che usa attributi per archiviare autorizzazioni e azioni nei metadati. La sicurezza imperativa è flessibile perché è possibile impostare lo stato di un oggetto autorizzazione e selezionare le azioni di sicurezza usando le informazioni non disponibili fino al runtime. Insieme a tale flessibilità, il rischio che le informazioni di runtime usate per determinare lo stato di un'autorizzazione non rimangano invariate finché l'azione è attiva.

Usare la sicurezza dichiarativa quando possibile. Le richieste dichiarative sono più facili da comprendere.

Come correggere le violazioni

Esaminare le richieste di sicurezza imperative per assicurarsi che lo stato dell'autorizzazione non si basi su informazioni che possono cambiare purché venga usata l'autorizzazione.

Quando eliminare gli avvisi

È possibile eliminare un avviso da questa regola se l'autorizzazione non si basa sulla modifica dei dati. Tuttavia, è meglio modificare la domanda imperativa al suo equivalente dichiarativo.

Vedi anche