Compartir a través de


Propiedad de la base de datos confiable

La propiedad de base de datos TRUSTWORTHY se usa para indicar si la instancia de SQL Server confía en la base de datos y en el contenido de ella. De forma predeterminada, esta configuración es OFF, pero se puede establecer en ON mediante la instrucción ALTER DATABASE. Por ejemplo: ALTER DATABASE AdventureWorks2012 SET TRUSTWORTHY ON;.

Nota:

Para establecer esta opción, debe ser miembro del rol fijo de servidor sysadmin .

Esta propiedad se puede usar para reducir determinadas amenazas que pueden existir como resultado de adjuntar una base de datos que contenga uno de los siguientes objetos:

  • Ensamblados malintencionados con permisos establecidos en EXTERNAL_ACCESS o UNSAFE. Para más información, consulte CLR Integration Security.

  • Módulos malintencionados que se definen para ejecutarse como si se tratase de usuarios con un alto nivel de privilegios. Para obtener más información, vea EXECUTE AS Clause (Transact-SQL).

Ambas situaciones requieren un grado específico de privilegios y están protegidas por mecanismos adecuados cuando se usan en el contexto de una base de datos que ya está asociada a una instancia de SQL Server. Sin embargo, si la base de datos está sin conexión, un usuario que tiene acceso al archivo de base de datos puede adjuntarla a una instancia de SQL Server de su elección y agregar contenido malintencionado a la base de datos. Cuando se separan y adjuntan bases de datos en SQL Server, se establecen ciertos permisos en los archivos de datos y de registro que restringen el acceso a los archivos de base de datos.

Dado que una base de datos asociada a una instancia de SQL Server no puede ser de confianza inmediata, la base de datos no puede acceder a los recursos más allá del ámbito de la base de datos hasta que la base de datos esté marcada explícitamente como de confianza. Además, los módulos diseñados para acceder a los recursos fuera de la base de datos y los ensamblados con la configuración de permisos EXTERNAL_ACCESS y UNSAFE tienen requisitos adicionales para ejecutarse correctamente.

Centro de seguridad para el motor de base de datos SQL Server y la base de datos SQL Azure

ALTER DATABASE (Transact-SQL)