Comparación de propietarios de geodatabases en SQL Server
Las geodatabases son una colección de tablas, vistas, funciones y procedimientos almacenados dentro de una base de datos. En geodatabases en una base de datos de Microsoft SQL Server, este conjunto de objetos pueden ser propiedad de un usuario de base de datos llamado 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.
Es importante entender cómo SQL Server administra el acceso a los datos y otros objetos. Por lo tanto, si no está familiarizado con el modelo de seguridad de SQL Server, consulte la documentación de SQL Server. SQL autentica un inicio de sesión en el nivel de la instancia y entonces autoriza al usuario correspondiente en el nivel de la 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 de SQL Server o de Windows con el que se conecta está asignado al usuario dbo en la base de datos, se crea una geodatabase de esquema dbo. Si el inicio de sesión de SQL Server o de Windows con el que se conecta está asignado al usuario llamado sde en la base de datos, se crea una geodatabase de esquema sde.
El usuario sde
El usuario sde en una base de datos puede estar asociado con un inicio de sesión autenticado de SQL Server o un inicio de sesión autenticado de Windows. 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 sean otorgados explícitamente a la sesión.
Los inicios de sesión que sean miembros del rol de servidor fijo sysadmin, se asignan a dbo en todas las bases de datos en la instancia de SQL Server y también tienen los mayores privilegios 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 | Autentificación | Ventajas | Desventajas |
---|---|---|---|
Dbo (miembro de sysadmin) | Inicio de sesión Windows o SQL Server |
|
|
Dbo (asignada a dbo en una base de datos específica) | Inicio de sesión Windows o SQL Server |
|
|
Sde | Inicio de sesión de SQL Server |
|
|
Sde | Inicio de sesión de Windows |
|
|
*La mayoría de los inicios de sesión de Windows, especialmente los inicios de dominio, pertenecen a una persona determinada. Ese inicio de sesión se utiliza por esa persona para iniciar sesión en su equipo y acceder a las aplicaciones de Windows, incluyendo SQL Server. Por tanto, cuando esa persona inicia sesión en el equipo, siempre podrá conectarse a la geodatabase como usuario sde. Para evitar esto, se puede crear otro inicio de sesión de Windows, esencialmente proporcionando a la persona dos inicios de sesión. Sin embargo, eso significa que la persona debe cambiar de inicios de sesión en el equipo cuando él o ella quiera administrar la geodatabase. Además, muchos sitios evitan crear varios inicios de sesión de la misma persona, puesto que puede tener implicaciones en materia de seguridad y aumenta la complejidad de la gestión de inicio de sesión.