di: Angelo Ranucci 16 Maggio 2006
In ASP.NET abbiamo due possibilità di trattare le stringhe di connessione. Una è quella di scriverle direttamente nelle pagine dell'applicazione o nel codice interno delle stesse, l'altra è di salvarle all'interno del file di configurazione, il "Web.Config".
La seconda scelta è la più indicata perchè facilità le operazioni di manutenzione ed aumenta le leggibilità del codice.
Le stringhe di connessione in genere contengono informazioni che è bene celare ad occhi indiscreti. Un malintenzionato che ne venisse a conoscenza potrebbe usarle per accedere al database dell'applicazione.
Con ASP.net 2.0 possiamo criptare le stringhe di connessione in fase di programmazione. Questo significa che lo sviluppatore può usare delle classi già pronte per criptare delle parti di codice.
La situazione auspicata è quella di avere a disposizione delle utility in locale, per trasformare le parti di codice più sensibili, in modo da portare online solo codice sicuro, cioè non leggibile e quindi non riproducibile.
Per realizzare l'esempio di questo articolo usiamo il database di esempio PUBS, che si può scaricare dal sito della Microsoft, il VWD (Visual Web Developer) ed il linguaggio C#.
Supponiamo di aver scaricato il nostro database di esempio nella cartella "SQL Server 2000 Sample Databases" sul disco C, come in figura.
Figura 1. Database di esempio PUBS
Con il VWD apriamo un "New Web Site" e lo chiamiamo "CriptareStringheConnessione" come in figura, in cui abbiamo scelto una localizzazione sul nostro file system ed il linguaggio C#.
Figura 2. Nuovo sito CriptareStringheConnessione
In Design view della "Default.aspx", trasciniamo un GridView. Configuriamo il GridView affinchè usi un SqlDataSource che attinga dal file di database "PUBS.MDF". Possiamo scegliere di visualizzare la tabella "authors" o un'altra tabella, tale scelta non è importante per i nostri scopi.
La situazione che ci si presenta è questa:
Figura 3. Visualizzazione di una tabella del database PUBS
La cosa importante è il file di configurazione che è stato automaticamente creato dal VWD e che riportiamo nel listato 1, mettendo in evidenza la sezione "connectionStrings".
Listato 1. Web.Config
<?xml version="1.0"?>
<configuration>
<appSettings/>
<connectionStrings>
<add name="PUBSConnectionString"
connectionString="Data Source=.\SQLEXPRESS;
AttachDbFilename="C:\SQL Server 2000 Sample Databases\PUBS.MDF";
Integrated Security=True;
Connect Timeout=30;
User Instance=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="false" />
<authentication mode="Windows" />
</system.web>
</configuration>
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200820 Febbraio 2012 a Milano |
|
Nessun corso previsto |