Partager via


Considérations sur la sécurité des schémas annotés (SQLXML 4.0)

Les éléments suivants constituent les indications de sécurité relatives à l'utilisation des schémas annotés :

  • Évitez d'utiliser le mappage par défaut dans les schémas de mappage. Le mappage par défaut expose les informations sur la base de données (noms de table et noms de colonne) dans le document XML obtenu parce que, par défaut, les noms d'élément sont mappés avec les noms de table et les noms d'attribut avec les noms de colonne. Par conséquent, tout utilisateur qui consulte le document XML a accès aux informations sur les tables et les colonnes de la base de données, d'où un problème de sécurité potentiel. Pour éviter ce risque, spécifiez des noms d'élément et d'attribut arbitraires dans le schéma et utilisez les annotations pour les mapper explicitement avec les tables et les colonnes. Pour plus d'informations sur l'utilisation du mappage par défaut lorsque vous créez des schémas XSD, consultez Mappage par défaut d'éléments et d'attributs XSD à des tables et des colonnes (SQLXML 4.0).

  • Le mappage explicite spécifié à l'aide d'annotations expose les informations sur la base de données (telles que les noms de table et les noms de colonne). Par conséquent, il se peut que vous ne souhaitiez pas rendre ces schémas disponibles publiquement.

  • Certaines requêtes telles que celles spécifiées sur le schéma de mappage avec récurrence (spécifiée à l'aide de l'annotation max-depth définie avec une valeur supérieure) peuvent nécessiter plus de temps pour s'exécuter. Vous pouvez, le cas échéant, spécifier une limite de délai d'expiration en définissant la propriété Command Time Out (en secondes). Par exemple :

    cn.Open "Provider=SQLOLEDB;Server=localhost;Database=tempdb;Integrated Security=SSPI;Command Properties='Command Time Out=50';"