Propriété de base de données TRUSTWORTHY
La propriété de base de données TRUSTWORTHY permet d'indiquer si l'instance de SQL Server fait confiance à la base de données et à son contenu. Par défaut, cette propriété a la valeur OFF, mais peut être définie sur ON à l'aide de l'instruction ALTER DATABASE. Par exemple, ALTER DATABASE AdventureWorks SET TRUSTWORTHY ON;.
[!REMARQUE]
Pour définir cette option, vous devez être membre du rôle serveur fixe sysadmin.
Cette propriété permet de minimiser certaines menaces résultant de l'attachement d'une base de données contenant l'un des objets suivants :
Assemblys malveillants dotés d'une autorisation EXTERNAL_ACCESS ou UNSAFE. Pour plus d'informations, consultez Sécurité de l'intégration du CLR.
Modules malveillants définis dans le but de s'exécuter en tant qu'utilisateurs à privilèges élevés. Pour plus d'informations, consultez Prolongement de l'emprunt d'identité au niveau de la base de données à l'aide de EXECUTE AS.
Ces deux situations exigent un niveau spécifique de privilèges et sont mises en défaut par des mécanismes appropriés dès lors qu'elles sont utilisées dans le cadre d'une base de données déjà attachée à une instance de SQL Server. Toutefois, si la base de données est mise hors ligne, un utilisateur qui a accès au fichier de la base de données peut éventuellement l'attacher à une instance de SQL Server de son choix et ajouter un contenu malveillant à la base de données. En cas de détachement et d'attachement de bases de données dans SQL Server 2005, certaines autorisations sont définies dans des fichiers de données et des fichiers journaux pour restreindre l'accès aux fichiers de la base de données. Pour plus d'informations, consultez Sécurisation des fichiers de données et des fichiers journaux.
Dans la mesure où il est impossible de faire immédiatement confiance à une base de données qui est attachée à une instance de SQL Server, la base de données n'a pas le droit d'accéder aux ressources au-delà de son étendue tant qu'elle n'a pas été explicitement déclarée fiable. De plus, les modules conçus pour accéder aux ressources extérieures à la base de données et les assemblys dotés des autorisations EXTERNAL_ACCESS ou UNSAFE ont des impératifs supplémentaires à respecter pour pouvoir s'exécuter correctement.
Voir aussi