En geodatabases en una base de datos Microsoft SQL Server, las tablas, vistas, funciones y procedimientos almacenados que componen una geodatabase pueden ser propiedad de un usuario de base de datos denominado sde o el usuario dbo de la base de datos. Sea cual sea el usuario que posee la geodatabase es considerado el administrador de la geodatabase. Como los nombres de usuario y los nombres de esquema deben coincidir en la geodatabase, las geodatabases que son propiedad del usuario sde se denominan geodatabases de esquema sde y las geodatabases que son propiedad del usuario dbo se denominan geodatabases de esquema dbo.
Nota:
Es importante comprender cómo SQL Server administra el acceso a los datos y a otros objetos. Por lo tanto, si no se ha familiarizado con el modelo de seguridad de SQL Server, lea la documentación de Microsoft SQL Server. SQL Server autentica un inicio de sesión al nivel de instancia y autoriza a un usuario correspondiente al nivel de base de datos. Los diferentes privilegios otorgados se pueden aplicar a toda la instancia, a una base de datos o bases de datos específicas o a datos en una base de datos. Esto puede afectar su decisión sobre qué tipo propietario de geodatabase utilizar.
El inicio de sesión con el que se conecta cuando crea la geodatabase determina qué el usuario de la base de datos es el propietario de la geodatabase. Si el inicio de sesión del sistema operativo o el inicio de sesión de SQL Server al que está conectado está asignado al usuario dbo en la base de datos, se crea una geodatabase de esquema dbo. Si el inicio de sesión del sistema operativo o de SQL Server al que está conectado está asignado a un usuario denominado sde en la base de datos, se crea una geodatabase de esquema sde.
El usuario sde
El usuario sde de una base de datos puede asociarse con un inicio de sesión autenticado de SQL Server o un inicio de sesión autenticado del sistema operativo. El usuario sde debe tener autoridad en un esquema denominado sde, y ese esquema debe ser el esquema predeterminado del usuario sde. Al usuario sde también se le deben otorgar privilegios de la base de datos que permitan al usuario crear y administrar la geodatabase.
El usuario dbo
El usuario dbo y su esquema predeterminado existen en todas las bases de datos automáticamente. Los inicios de sesión pueden ser dbo en una base de datos de una de dos maneras:
- Por crear o convertirse en propietario de una base de datos específica
- Por ser miembro del rol de servidor fijo sysadmin.
Los inicios de sesión asignados por el usuario dbo en una base de datos específica tienen los mayores privilegios posibles en esa base de datos; por lo tanto, tienen privilegios suficientes para crear y administrar la geodatabase. Los inicios de sesión que se asignan a dbo en una base de datos específica no tienen privilegios elevados en la instancia de SQL Server u otras bases de datos, a menos que estos privilegios se concedan explícitamente al inicio de sesión.
Los inicios de sesión que son miembros del rol de servidor fijo sysadmin se asignan a dbo en cada base de datos en la instancia de SQL Server y también tienen los privilegios más altos posibles en toda la instancia de SQL Server. Este tipo de inicios de sesión tienen privilegios suficientes para crear y administrar la geodatabase y pueden crear, modificar, eliminar y administrar otros securables en la instancia.
Todos los objetos de base de datos propiedad del usuario dbo se almacenan en el esquema de dbo.
¿Cuál usuario debería ser el propietario de la geodatabase?
No hay diferencia en el rendimiento o funcionalidad entre los dos tipos de esquemas de geodatabase. Cada uno cuenta con ventajas e inconvenientes. Elija el usuario (y, por consiguiente, un esquema) que mejor se adapte al sistema y modelo de seguridad elegido.
La siguiente es una comparación de los dos tipos de esquema, basada en el tipo de autenticación que utiliza:
Esquema | Autenticación | Ventajas | Desventajas |
---|---|---|---|
Dbo (miembro de sysadmin) | Inicio de sesión del sistema operativo o de SQL Server |
|
|
Dbo (asignada a dbo en una base de datos específica) | Inicio de sesión del sistema operativo o de SQL Server |
|
|
Sde | Inicio de sesión de SQL Server |
|
|
Sde | Inicio de sesión del sistema operativo |
|
|