Considerazioni relative alla sicurezza degli schemi con annotazioni (SQLXML 4.0)
Si applica a: SQL Server database SQL di Azure
Di seguito sono riportate alcune linee guida relative alla sicurezza quando si utilizzano gli schemi con annotazioni.
Evitare di utilizzare il mapping predefinito negli schemi di mapping. Il mapping predefinito, infatti, espone le informazioni del database (nomi di tabella e di colonna) nel documento XML risultante in quanto, per impostazione predefinita, i nomi di elemento vengono mappati ai nomi di tabella e i nomi di attributo vengono mappati ai nomi di colonna. Pertanto, qualsiasi utente che visualizza il documento XML può accedere anche alle informazioni su tabelle e colonne nel database, ponendo un problema di sicurezza potenziale. Per evitare questo rischio, specificare nomi di elementi e di attributi arbitrari nello schema e utilizzare le annotazioni per mapparli esplicitamente alle tabelle e alle colonne. Per altre informazioni sull'uso del mapping predefinito quando si creano schemi XSD, vedere Mapping predefinito di elementi e attributi XSD a tabelle e colonne (SQLXML 4.0).
Il mapping esplicito specificato mediante le annotazioni espone le informazioni del database, ad esempio i nomi di tabelle e colonne. È opportuno dunque non rendere pubblici pubblicamente questi schemi.
Alcune query, ad esempio quelle specificate sullo schema di mapping con ricorsione (specificato usando l'annotazione max depth impostata su un valore superiore) potrebbero richiedere più tempo per l'esecuzione. Facoltativamente, è possibile specificare un limite di timeout impostando la proprietà Timeout del comando (in secondi). Ad esempio:
cn.Open "Provider=SQLOLEDB;Server=localhost;Database=tempdb;Integrated Security=SSPI;Command Properties='Command Time Out=50';"