Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Administrar Seguridad
Así mismo logramos comprender como funciona la seguridad a nivel de permisos de usuario
o grupos de usuarios, así mismo podemos ver de manera más concisa este desarrollo de
seguridad mediante código
Cuando establecemos condiciones para acceder a la instancia, para crear nuevas bases
de datos en la instancia o cualquier otra acción relativa a la instancia, estamos hablando de
seguridad de instancia, Las tareas de seguridad de instancia se definen a través de
funciones.
Cuando establecemos permisos de acceso o de cualquier otra acción sobre los objetos de
la base de datos, estamos hablando de seguridad de bases de datos. La seguridad de base
de datos se define a través de permisos.
Los epígrafes del propio árbol del Administrador corporativo Microsoft SQL Server
Management Studio que se observan al Ver los objetos de la instancia y al expandir
cualquier base de datos de la instancia de trabajo reflejan las tareas de administración de
la seguridad.
Seguridad de Instancia
En cuanto a los inicios de sesión, ya en el propio proceso de instalación hay que decidir el
modo de acceso a SQL Server. Concretamente en la pantalla modo de autenticación se
especifica la seguridad utilizada para la conexión con SQL Server. Si se van a utilizar varias
instancias es conveniente utilizar Modo mixto (autenticación de Windows y SQL Server), en
cuyo caso se dotará de contraseña al usuario administrador por defecto sa (system
administrador).
Cuando se inicia una sesión en un servidor de SQL Server mediante una herramienta
gráfica de administración, como el administrador corporativo o con consultas al motor de
base de datos, el sistema le pedirá el nombre del servidor, un Id. de inicio de sesión y una
contraseña, si son necesarios. La forma de iniciar sesión en una instancia depende de si se
utiliza autenticación de Windows o modo mixto. Si se utiliza autenticación de Windows (se
usa en general cuando el administrador del sistema coincide con el de la base de datos),
no tendrá que proporcionar un Id cada que tenga acceso a un servidor SQL registrado. SQL
Server iniciará automáticamente una sesión con su cuenta de Microsoft Windows. Si se
utiliza el modo mixto (usual cuando el administrador del sistema y de SQL Server son
distintos), será necesario introducir Id. de inicio de sesión y una contraseña
El modo de acceso para iniciar sesión puede cambiarse posteriormente haciendo clic en el
botón derecho del ratón sobre la instancia, eligiendo Propiedades en el menú emergente
resultante y rellenando adecuadamente los campos de la ficha Seguridad en la pantalla
Propiedades del servidor que se obtiene.
Autentificación y administración de usuarios.
Cualquier usuario que intente conectarse a la base de datos debe hacerlo con un nombre
de usuario determinado para que SQL Server autentique que dicha persona está autorizada
a usar la cuenta. Cada usuario debe obtener acceso a una instancia de Microsoft SQL
Server a través de una cuenta de inicio de sesión que establece su capacidad para
conectarse (autenticación). A continuación, esta cuenta de inicio de sesión se asigna a una
cuenta de usuario de SQL Server que se utiliza para comprobar las actividades realizadas
en la base de datos (validación de permisos). Por tanto, se asigna un único inicio de sesión
a cada cuenta de usuario creada en cada base de datos a la que el inicio de sesión tiene
acceso. Si en una base de datos no hay ninguna cuenta de usuario, el usuario no podrá
tener acceso a ella, aunque pueda conectarse a una instancia de SQL Server. El inicio de
sesión se crea en Microsoft Windows y no en SQL Server. A continuación, se concede
permiso y este inicio de sesión para conectarse a una instancia de SQL Server,
concediéndose acceso al inicio de sesión en SQL Server.
Para conceder acceso de inicio de sesión en SQL Server a un usuario o grupo de Windows
expanda una instancia y, a continuación, expanda Seguridad, hacer clic con el botón
derecho del mouse en Inicios de sesión y, a continuación, haga clic en Nuevo inicio de
sesión. Se obtiene la pantalla Inicio de sesión. En el cuadro Nombre escriba la cuenta de
Microsoft Windows que permitirá obtener el acceso a SQL. En Autenticación, haga clic en
Autenticación de Windows.
Para conceder acceso a SQL Server a un usuario o grupo de Windows mediante Tansact
SQL se utiliza la sentencia SP_GRANTLOGIN cuya sintaxis es la siguiente:
También se puede usar la sentencia sp_addlogin para permitir a un inicio de sesión de SQL
conectar con SQL Server.
En cuanto a permisos, solo los miembros de las funciones fijas de servidor
Una cuenta de inicio de sesión de Microsoft SQL Server permite conectarse con un nombre
de inicio de sesión y una contraseña especificados, en lugar de utilizar una cuenta de
usuario o de grupo de Microsoft Windows.
Para agregar una cuenta de inicio de sesión de SQL Server usando el administrador
corporativo expanda una instancia y, a continuación, expanda Seguridad, haga clic con el
botón secundario del ratón en Inicios de sesión y, a continuación, haga clic en Nuevo inicio
de sesión. En el campo Nombre se escribe un nombre para el inicio de sesión de SQL
Server, en Autenticación se selecciona Autenticación de SQL Server y, opcionalmente, en
Contraseña se escribe una contraseña.
Es conveniente agregar una cuenta de Microsoft SQL Server a cada base de datos para
cada inicio de sesión que requiera acceso a la base de datos. Si no se crea el usuario en la
base de datos, la cuenta de SQL Server no tendrá acceso a la misma.
Para conceder a una cuenta de SQL Server acceso a una base de datos usando el
administrador corporativo expanda el árbol de la instancia. A continuación, expanda bases
de datos y expanda también la base de datos a la que el inicio de sesión obtendrá acceso
y su rúbrica Seguridad.
Haga clic en el botón secundario del mouse en Usuarios y, a continuación. Haga clic en
nuevo usuario. Se obtiene la pantalla Usuarios de la base de datos. En el cuadro Nombre
de inicio de sesión haga clic en el inicio de sesión al que se concederá el acceso a la base
de datos.
Usuarios por defecto de la base de datos
Al abrir la rúbrica Usuarios del apartado Seguridad que cuelga de una base de datos en el
árbol del administrador corporativo, se observan determinados usuarios por defecto de la
base de datos.
El usuario de nombre dbo disfruta implícitamente de permiso para realizar todas las
actividades de la base de datos. No se puede eliminar y siempre está presente en todas las
bases de datos.
La cuenta de usuario guest permite iniciar una sesión sin tener una cuenta de usuario para
obtener acceso a una base de datos.
Se pueden crear funciones o roles de bases de datos de Microsoft SQL Server cuando un
grupo de usuarios necesite realizar un conjunto especifico de actividades en SQL y no haya
un grupo de Microsoft Windows aplicable o no se tenga permiso para administrar cuentas
de usuario de Windows.
Las funciones de SQL Server existen en cada base de datos y no pueden abarcar más de
una base de datos. Entre las ventajas del uso de funciones de base de datos se encuentran
las siguientes:
• Para cualquier usuario, puede tener activa más de una función de base
de datos a la vez.
• Un usuario puede pertenecer a más de una función de la misma base de
datos.
• Se consigue un modelo escalable para configurar el nivel adecuado de
seguridad dentro de cada base de datos.
Para crear una función de base de datos en SQL Server expanda el árbol de la instancia.
A continuación, expanda bases de datos y también la base de datos en la que ha de crearse
la función. Expanda Funciones, hacer clic en el botón secundario del mouse en Funciones
de las bases de datos y elija Nueva función de bases de datos. En el cuadro Nombre de la
función de la pantalla Función de bases de datos, escriba el nombre de la nueva función y
elija los esquemas de propiedad de esta función.
Es posible crear una nueva función (rol) de Microsoft SQL Server en la base de datos actual
mediante Transact SQL a través de la sentencia sp_addrole cuya sintaxis es la siguiente:
Para agregar a un miembro de una base de datos de SQL Server mediante el administrador
corporativo expanda la instancia. A continuación, expanda bases de datos y además la base
de datos en la que se encuentra la función. Hacer clic en funciones y elegir Funciones de
la base de datos en el panel de detalles, hacer clic con el botón secundario del ratón en la
función donde se desea agregar el usuario y, luego, haga clic en propiedades. En la pantalla
Propiedades de la función de la base de datos elija los esquemas de propiedad de esta
función.
Es posible agregar una cuenta de seguridad como miembro de una función de base de
datos de Microsoft SQL Server existente en la base de datos actual mediante Transact SQL
a través de la sentencia sp_addrolmember cuya sintaxis es la siguiente:
Para agregar a un miembro a una función fija del servidor mediante el administrador
corporativo expanda un grupo de servidores y, luego, un servidor. A continuación, expanda
seguridad y hacer clic en funciones del servidor. En el panel de detalles, hacer clic en el
botón secundario del ratón en la función y, a continuación, hacer clic en propiedades. En la
ficha general de la pantalla
Propiedades de la función del servidor, hacer clic en agregar y, por último, hacer clic en las
cuentas de inicio de sesión que desee agregar.
Administrar permisos sobre objetos de base de datos
El usuario debe tener los permisos adecuados para realizar cualquier actividad que implique
cambiar la definición de una base de datos o el acceso a su contenido. La administración
de permisos incluye la concesión o revocación de los derechos de usuario para trabajar con
datos y ejecutar procedimientos para crear una base de datos o un elemento de la base de
datos y para utilizar permisos concedidos a las funciones predefinidas.
Para conceder o revocar permisos a un usuario sobre una tabla de base de datos se abre
el árbol del Administrador corporativo, se expande la base de datos que contiene la tabla,
se expande Tablas y Tablas del sistema y se hace clic con el botón derecho del ratón sobre
la tabla afectada. En el menú emergente resultante se elige Propiedades y se obtiene la
pantalla Propiedades de la tabla. En el campo Usuarios funciones se agrega el usuario al
que damos los permisos de la tabla. En el campo Permisos explícitos para usuario se
conceden o deniegan sus permisos sobre la tabla.
Conceder permisos con transac SQL
Conclusiones
En esta investigación aprendí como es que funciona una base de datos a nivel de la
seguridad de esta, así mismo se logró comprender los procesos de los usuarios y su
importancia al momento de desarrollar una seguridad completa en el entorno de una base
de datos, gracias a esto, comprendí como la seguridad en una base de datos es muy
necesaria a la hora de que nosotros estemos eligiendo usuarios para que estos puedan
modificarla.
Bibliografía
Microsoft SQL Server 2005. Administración y análisis de bases de datos, César Pérez