Convalida dell'input utente
Quando si costruisce un'applicazione che accede ai dati, è necessario presupporre che ogni input utente possa essere dannoso fino a quando non viene dimostrato il contrario. In caso contrario, si espone l'applicazione a potenziali attacchi. Un tipo di attacco che può verificarsi è denominato SQL injection. L'attacco consiste nell'aggiunta di codice pericoloso a stringhe passate in un'istanza di SQL Server, che verranno poi analizzate ed eseguite. Per evitare questo tipo di attacco, è necessario utilizzare stored procedure con parametri, dove possibile, e convalidare sempre l'input utente.
La convalida dell'input utente nel codice client è importante per evitare di eseguire round trip al server non necessari. È altrettanto importante convalidare i parametri nelle stored procedure nel server. In questo modo vengono rilevati gli input che ignorano la convalida lato client.
Per altre informazioni sugli attacchi intrusivi nel codice SQL e su come evitarli, vedere l'argomento relativo a questo tipo di attacchi. Per altre informazioni sulla convalida dei parametri delle stored procedure, vedere Stored procedure e gli articoli correlati.