Protezione delle applicazioni ADO.NETSecuring ADO.NET Applications

Per scrivere un'applicazione ADO.NET protetta, non è sufficiente evitare i problemi più comuni di codifica, ad esempio la mancata convalida dell'input dell'utente.Writing a secure ADO.NET application involves more than avoiding common coding pitfalls such as not validating user input. Un'applicazione che consente di accedere ai dati può presentare molti punti di errore, che possono essere sfruttati da utenti non autorizzati per recuperare, modificare o distruggere dati sensibili.An application that accesses data has many potential points of failure that an attacker can exploit to retrieve, manipulate, or destroy sensitive data. È pertanto importante considerare tutti gli aspetti della sicurezza, a partire dal processo di classificazione dei rischi durante la fase di progettazione dell'applicazione, fino all'eventuale distribuzione e alla manutenzione costante.It is therefore important to understand all aspects of security, from the process of threat modeling during the design phase of your application, to its eventual deployment and ongoing maintenance.

Con .NET Framework vengono forniti numerosi servizi, classi e strumenti utili per la protezione e l'amministrazione di applicazioni di database.The .NET Framework provides many useful classes, services, and tools for securing and administering database applications. Common Language Runtime (CLR) fornisce un ambiente indipendente dai tipi in cui eseguire il codice, con una Sicurezza dall'accesso di codice (CAS, Code Access Security) per limitare ulteriormente le autorizzazioni del codice gestito.The common language runtime (CLR) provides a type-safe environment for code to run in, with code access security (CAS) to restrict further the permissions of managed code. Attenendosi alle tecniche per la generazione di codice di accesso ai dati protetto, è possibile limitare i danni inflitti da un potenziale utente non autorizzato.Following secure data access coding practices limits the damage that can be inflicted by a potential attacker.

Il codice protetto non difende dai problemi di sicurezza che si possono verificare quando si usano risorse non gestite quali i database.Writing secure code does not guard against self-inflicted security holes when working with unmanaged resources such as databases. La maggior parte dei database di server, ad esempio SQL Server, dispone di sistemi di sicurezza interni, che aumentano la protezione se correttamente implementati.Most server databases, such as SQL Server, have their own security systems, which enhance security when implemented correctly. Tuttavia, anche un'origine dati con un sistema di sicurezza efficace può subire danni da un attacco se non è configurata in modo appropriato.However, even a data source with a robust security system can be victimized in an attack if it is not configured appropriately.

In questa sezioneIn This Section

Panoramica della sicurezzaSecurity Overview
Vengono forniti consigli per la progettazione di applicazioni ADO.NET protette.Provides recommendations for designing secure ADO.NET applications.

Accesso sicuro ai datiSecure Data Access
Viene descritto come usare i dati di un'origine dati protetta.Describes how to work with data from a secured data source.

Applicazioni client sicureSecure Client Applications
Vengono riportate alcune considerazioni sulla sicurezza per le applicazioni client.Describes security considerations for client applications.

Sicurezza dell'accesso di codice e ADO.NETCode Access Security and ADO.NET
Viene descritto come usare la sicurezza dall'accesso di codice per migliorare la protezione del codice ADO.NET.Describes how CAS can help protect ADO.NET code. Viene inoltre illustrato come operare in un contesto di attendibilità parziale.Also discusses how to work with partial trust.

Privacy e sicurezza dei datiPrivacy and Data Security
Vengono descritte le opzioni di crittografia disponibili per le applicazioni ADO.NET.Describes encryption options for ADO.NET applications.

Sicurezza di SQL ServerSQL Server Security
Vengono descritte le funzionalità di sicurezza di SQL Server dal punto di vista di uno sviluppatore.Describes SQL Server security features from a developer's perspective.

Considerazioni sulla sicurezzaSecurity Considerations
Viene descritta la sicurezza per le applicazioni Entity Framework.Describes security for Entity Framework applications.

SicurezzaSecurity
Contiene collegamenti ad argomenti in cui vengono descritti tutti gli aspetti della sicurezza in .NET.Contains links to topics describing all aspects of security in .NET.

Strumenti di sicurezzaSecurity Tools
Vengono fornite informazioni sugli strumenti di .NET Framework per la protezione e l'amministrazione dei criteri di sicurezza..NET Framework tools for securing and administering security policy.

Risorse per la creazione di applicazioni sicureResources for Creating Secure Applications
Vengono forniti collegamenti ad argomenti relativi alla creazione di applicazioni protette.Provides links to topics for creating secure applications.

Bibliografia sulla sicurezzaSecurity Bibliography
Vengono forniti collegamenti a risorse esterne disponibili online e in formato cartaceo.Provides links to external resources available online and in print.

Vedere ancheSee Also

ADO.NETADO.NET
Provider gestiti ADO.NET e Centro per sviluppatori di set di datiADO.NET Managed Providers and DataSet Developer Center