Você está na página 1de 11

CREACION DE USUARIOS Crear base de datos seguridad NOTA IMPORTANTE: Para q un usuario cualquiera (Public) acceda a una BD,

hay q darle permiso en roles pero de asignacin a base de datos y le damos Crear inicio de sesin: CREATE LOGIN Administrador WITH password = '12345'
Vemos lo que agregamos en la carpeta Seguridad Para modificar la clave ALTER LOGIN Administrador WITH password = '12345' Para cambiar el inicio de seaion ALTER LOGIN Administrador WITH name = Administ Para eliminar y poner nueva contra de cualquier inicio de sesion sp_password @old = null, @new = '1234', @loginame ='administrador' Go EXEC sp_helpsrvrole OBTIENE LA LISTA DE ROLES A NIVEL DE SERVIDOR DE SQL exec sp_helprole OBTIENE LA LISTA DE ROLES A NIVEL DE BASE DE DATOS DE SQL EXEC sp_helpserver OBTIENE EL NOMBRE DEL SERVIDOR o la lista si hay varios sp_helplogins da la lista de usuarios y q base de datos se les asigno. Si ponemos EXEC sp_helpserver 'JAVIERHP\SQLEXPRESS' NOS SALE SOLO ESTA :) sp_helpdb obtiene las base de datos pero con otros items OBTENEMOS FUNCIONES,DENEGACIONES DE USURIOS DETALLADO TODO DE ALL LOGIN SELECT * from sys.syslogins PARA OBTNER NOMBRE DEL USUARIO LA FECHA DE CREACION Y LA QUE SE MODIFICO EN REALIDAD OBTENEMOS TODA LA INFORMACION DE TODOS LOS USUARIO,ESTA EDITADO :) SELECT name,create_date,modify_date FROM sys.server_principals SYSADMIN PUEDE SER CUALQUIER ROL(MUESTRA QUE USUARIOS TIENEN ESTE ROL) EXEC sp_helpsrvrolemember 'sysadmin' PARA CAMBIAR LA CONTRASEA en donde PASSWORD ES LA NUEVA Y OLD LA ANTIGUA ALTER LOGIN administrador WITH PASSWORD = '1234' OLD_PASSWORD = '11111' OBTENER EL USUARIO ACTUAL DE SQL SERVER select SYSTEM_USER OBTENEMOS LOS ROLES DEL USUARIO PERO SOLO DE ESE USUARIO Q TENEMOS ACTIVO SELECT name FROM sys.server_principals WHERE principal_id IN (SELECT role_principal_id FROM sys.server_role_members WHERE MEMBER_PRINCIPAL_ID = (SELECT principal_id FROM sys.server_principals WHERE name= (select SYSTEM_USER)))-- AQUI ACABA EL PRIMER SCRIP SELECT * FROM sys.server_role_members; SELECT * FROM sys.server_principals PARA use[nombredebase] y connect to[nombreusuario]DENIEGA EL ACCESO A UN USUARIO DE ALGUNA BASE CORRESPONDIENTE, para ver mas vamos a la base de datos, anticlick, propiedades, permisos y chekeamos o deschekeamos use [clienteservidor]

GO REVOKE CONNECT TO [Administrador] GO Para eliminar usuario DROP LOGIN Administrador LISTAR LAS BASE DE DATOS DE SQL, LE PONEMOS WHERE database_id>'4' para q aparezcn las bd q emos creado nosotros. SELECT * FROM sys.databases Con esto se puso en el servidor, pero ahora queremos asignarle a la base de datos, vamos a propiedades y en asignar usuarios chekeamos la base y aceptamos.

Caracterstica sp_helpsrvrole (Transact-SQL) sp_helpsrvrolemember (TransactSQL) sp_srvrolepermission (TransactSQL)

Tipo Metadatos Metadatos Metadatos

IS_SRVROLEMEMBER (TransactMetadatos SQL) sys.server_role_members (TransactMetadatos SQL) sp_addsrvrolemember (TransactComando SQL) sp_dropsrvrolemember (TransactSQL) Comando

Descripcin Devuelve una lista de funciones de nivel de servidor. Devuelve informacin acerca de los miembros de una funcin de nivel de servidor. Muestra los permisos de una funcin de nivel de servidor. Indica si un inicio de sesin de SQL Server es miembro de la funcin de nivel de servidor especificada. Devuelve una fila por cada miembro de cada funcin de nivel de servidor. Agrega un inicio de sesin como miembro de una funcin de nivel de servidor. Quita un inicio de sesin de SQL Server o un usuario o grupo de Windows de una funcin de nivel de servidor.

FUNCION Y LO QUE HACEN(PROCEDIMIENTOS) bulkadmin Add member to bulkadmin bulkadmin BULK INSERT dbcreator Add member to dbcreator dbcreator ALTER DATABASE dbcreator CREATE DATABASE dbcreator DROP DATABASE dbcreator Extend database dbcreator RESTORE DATABASE dbcreator RESTORE LOG dbcreator sp_renamedb diskadmin Add member to diskadmin diskadmin DISK INIT diskadmin sp_addumpdevice diskadmin sp_diskdefault diskadmin sp_dropdevice processadmin Add member to processadmin processadmin KILL securityadmin Add member to securityadmin securityadmin Grant/deny/revoke CREATE DATABASE securityadmin Read the error log securityadmin sp_addlinkedsrvlogin securityadmin sp_addlogin securityadmin sp_defaultdb securityadmin sp_defaultlanguage securityadmin sp_denylogin securityadmin sp_droplinkedsrvlogin

securityadmin sp_droplogin securityadmin sp_dropremotelogin securityadmin sp_grantlogin securityadmin sp_helplogins securityadmin sp_password securityadmin sp_remoteoption (update) securityadmin sp_revokelogin serveradmin Add member to serveradmin serveradmin dbcc freeproccache serveradmin RECONFIGURE serveradmin SHUTDOWN serveradmin sp_configure serveradmin sp_fulltext_service serveradmin sp_tableoption setupadmin Add member to setupadmin setupadmin Add/drop/configure linked servers setupadmin Mark a stored procedure as startup sysadmin Add extended procedures sysadmin Add member to bulkadmin sysadmin Add member to dbcreator sysadmin Add member to diskadmin sysadmin Add member to processadmin sysadmin Add member to securityadmin sysadmin Add member to serveradmin sysadmin Add member to setupadmin sysadmin Add member to sysadmin sysadmin Add/drop to/from db_accessadmin sysadmin Add/drop to/from db_backupoperator sysadmin Add/drop to/from db_datareader sysadmin Add/drop to/from db_datawriter sysadmin Add/drop to/from db_ddladmin sysadmin Add/drop to/from db_denydatareader sysadmin Add/drop to/from db_denydatawriter sysadmin Add/drop to/from db_owner sysadmin Add/drop to/from db_securityadmin sysadmin Add/drop/configure linked servers sysadmin All DDL but GRANT, REVOKE, DENY sysadmin ALTER DATABASE sysadmin BACKUP DATABASE sysadmin BACKUP LOG sysadmin BULK INSERT sysadmin CHECKPOINT sysadmin Complete SETUSER SQL user sysadmin Constraints on System tables sysadmin CREATE DATABASE sysadmin Create indices on system tables sysadmin Create/delete/modify system tables sysadmin dbcc change 'on' rules sysadmin dbcc checkalloc sysadmin dbcc checkdb sysadmin dbcc checkfilegroup sysadmin dbcc checkident sysadmin dbcc checktable sysadmin dbcc cleantable sysadmin dbcc dbreindex sysadmin dbcc dropcleanbuffers sysadmin dbcc freeproccache sysadmin dbcc inputbuffer sysadmin dbcc outputbuffer sysadmin dbcc pintable sysadmin dbcc proccache

sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin

dbcc setcpuweight dbcc setioweight dbcc show_statistics dbcc showcontig dbcc showoptweights DBCC ShrinkDatabase dbcc shrinkfile dbcc traceon/off dbcc updateusage DELETE permission on any object DENY DISK INIT DROP DATABASE EXECUTE any procedure Extend database GRANT Grant/deny/revoke CREATE DATABASE INSERT permission on any object KILL Mark a stored procedure as startup Raiserror With Log Read the error log RECONFIGURE REFERENCES permission on any table RESTORE DATABASE RESTORE LOG REVOKE SELECT permission on any object SHUTDOWN sp_addapprole sp_addlinkedsrvlogin sp_addlogin sp_addrole sp_addrolemember sp_addumpdevice sp_adduser sp_altermessage sp_approlepassword sp_change_users_login sp_changedbowner sp_changeobjectowner sp_configure sp_dbcmptlevel sp_dboption (update) sp_dboption update part sp_defaultdb sp_defaultlanguage sp_denylogin sp_diskdefault sp_dropalias sp_dropapprole sp_dropdevice sp_droplinkedsrvlogin sp_droplogin sp_dropremotelogin sp_droprole sp_droprolemember sp_dropuser sp_fulltext_catalog sp_fulltext_column sp_fulltext_database

sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin sysadmin

sp_fulltext_service sp_fulltext_table sp_grantdbaccess sp_grantlogin sp_helplogins sp_password sp_recompile sp_refreshview sp_remoteoption sp_remoteoption (update) sp_rename sp_renamedb sp_revokedbaccess sp_revokelogin sp_tableoption sp_updatestats TRUNCATE TABLE UPDATE permission on any object USE to a suspect database

FUNCIONES A NIVEL DE BASE Y LO QUE HACEN SP db_accessadmin sp_dropalias db_accessadmin sp_dropuser db_accessadmin sp_grantdbaccess db_accessadmin sp_revokedbaccess db_backupoperator BACKUP DATABASE db_backupoperator BACKUP LOG db_backupoperator CHECKPOINT db_datareader SELECT permission on any object db_datawriter DELETE permission on any object db_datawriter INSERT permission on any object db_datawriter UPDATE permission on any object db_ddladmin All DDL but GRANT, REVOKE, DENY db_ddladmin dbcc cleantable db_ddladmin dbcc show_statistics db_ddladmin dbcc showcontig db_ddladmin REFERENCES permission on any table db_ddladmin sp_changeobjectowner db_ddladmin sp_fulltext_column db_ddladmin sp_fulltext_table db_ddladmin sp_recompile db_ddladmin sp_rename db_ddladmin sp_tableoption db_ddladmin TRUNCATE TABLE db_denydatareader No SELECT permission on any object db_denydatawriter No DELETE permission on any object db_denydatawriter No INSERT permission on any object db_denydatawriter No UPDATE permission on any object db_owner Add/drop to/from db_accessadmin db_owner Add/drop to/from db_backupoperator db_owner Add/drop to/from db_datareader db_owner Add/drop to/from db_datawriter db_owner Add/drop to/from db_ddladmin db_owner Add/drop to/from db_denydatareader db_owner Add/drop to/from db_denydatawriter db_owner Add/drop to/from db_owner db_owner Add/drop to/from db_securityadmin db_owner All DDL but GRANT, REVOKE, DENY db_owner BACKUP DATABASE db_owner BACKUP LOG db_owner CHECKPOINT

db_owner dbcc checkalloc db_owner dbcc checkdb db_owner dbcc checkfilegroup db_owner dbcc checkident db_owner dbcc checktable db_owner dbcc cleantable db_owner dbcc dbreindex db_owner dbcc proccache db_owner dbcc show_statistics db_owner dbcc showcontig db_owner dbcc shrinkdatabase db_owner dbcc shrinkfile db_owner dbcc updateusage db_owner DELETE permission on any object db_owner DENY db_owner EXECUTE any procedure db_owner GRANT db_owner INSERT permission on any object db_owner REFERENCES permission on any table db_owner REVOKE db_owner SELECT permission on any object db_owner sp_addapprole db_owner sp_addrole db_owner sp_addrolemember db_owner sp_approlepassword db_owner sp_change_users_login db_owner sp_changeobjectowner db_owner sp_dbcmptlevel db_owner sp_dboption (update) db_owner sp_dropalias db_owner sp_dropapprole db_owner sp_droprole db_owner sp_droprolemember db_owner sp_dropuser db_owner sp_fulltext_catalog db_owner sp_fulltext_column db_owner sp_fulltext_database db_owner sp_fulltext_table db_owner sp_grantdbaccess db_owner sp_recompile db_owner sp_refreshview db_owner sp_rename db_owner sp_revokedbaccess db_owner sp_tableoption db_owner TRUNCATE TABLE db_owner UPDATE permission on any object db_securityadmin DENY db_securityadmin GRANT db_securityadmin REVOKE db_securityadmin sp_addapprole db_securityadmin sp_addrole db_securityadmin sp_addrolemember db_securityadmin sp_approlepassword db_securityadmin sp_changeobjectowner db_securityadmin sp_dropapprole db_securityadmin sp_droprole db_securityadmin sp_droprolemember

Nombre de funcin de nivel de base de datos

Descripcin

db_owner

Los miembros de la funcin de base de datos fija db_owner pueden realizar todas las actividades de configuracin y mantenimiento en la base de datos y tambin pueden quitar la base de datos. Los miembros de la funcin de base de datos fija db_securityadmin pueden modificar la pertenencia a funciones y administrar permisos. Si se agregan entidades de seguridad a esta funcin, podra habilitarse un aumento de privilegios no deseado. Los miembros de la funcin de base de datos fija db_accessadmin pueden agregar o quitar el acceso a la base de datos para inicios de sesin de Windows, grupos de Windows e inicios de sesin de SQL Server. Los miembros de la funcin de base de datos fija db_backupoperator pueden crear copias de seguridad de la base de datos. Los miembros de la funcin de base de datos fija db_ddladmin pueden ejecutar cualquier comando del lenguaje de definicin de datos (DDL) en una base de datos. Los miembros de la funcin de base de datos fija db_datawriter pueden agregar, eliminar o cambiar datos en todas las tablas de usuario.

db_securityadmin

db_accessadmin

db_backupoperator

db_ddladmin

db_datawriter

db_datareader

Los miembros de la funcin de base de datos fija db_datareader pueden leer todos los datos de todas las tablas de usuario. Los miembros de la funcin de base de datos fija db_denydatawriter no pueden agregar, modificar ni eliminar datos de tablas de usuario de una base de datos. Los miembros de la funcin de base de datos fija db_denydatareader no pueden leer datos de las tablas de usuario dentro de una base de

db_denydatawriter

db_denydatareader

Funciones de nivel de servidor


Para administrar con facilidad los permisos en el servidor, SQL Server proporciona varias funciones, que son entidades de seguridad que agrupan a otras entidades de seguridad. Las funciones son como los grupos del sistema operativo Microsoft Windows.

Las funciones fijas de servidor se proporcionan por comodidad y por motivos de compatibilidad con versiones anteriores. Se recomienda asignar permisos ms concretos siempre que sea posible. Las funciones de nivel de servidor tambin se denominan funciones fijas de servidor porque no se pueden crear nuevas funciones de nivel de servidor. Las funciones de nivel de servidor se aplican a todo el servidor en lo que respecta a su mbito de permisos. Puede agregar inicios de sesin de SQL Server, cuentas de Windows y grupos de Windows a las funciones de nivel de servidor. Cada miembro de una funcin fija de servidor puede agregar otros inicios de sesin a esa misma funcin. En la tabla siguiente se muestran las funciones de nivel de servidor y sus capacidades. Rol fijo de servidor sysadmin securityadmin serveradmin setupadmin processadmin diskadmin dbcreator bulkadmin Descripcin Administradores del sistema Administradores de seguridad Administradores de servidor Administradores de instalacin Administradores de proceso Administradores de disco Creadores de bases de datos Puede ejecutar instrucciones BULK INSERT

Nombre de la funcin de nivel de servidor sysadmin

Descripcin

Los miembros de la funcin fija de servidor sysadmin pueden realizar cualquier actividad en el servidor. Los miembros de la funcin fija de servidor serveradmin pueden cambiar las opciones de configuracin en el servidor y cerrar el servidor. Los miembros de la funcin fija de servidor securityadmin administran los inicios de sesin y sus propiedades. Administran los permisos de servidor GRANT, DENY y REVOKE. Tambin administran los permisos de base de datos GRANT, DENY y REVOKE. Asimismo, pueden

serveradmin

securityadmin

restablecer contraseas para inicios de sesin de SQL Server. Nota de seguridad La capacidad de conceder acceso al Database Engine (Motor de base de datos) y configurar permisos de usuario permite a la administracin de seguridad asignar la mayora de los permisos de servidor. La funcin securityadmin se debe tratar como equivalente a la funcin sysadmin. processadmin Los miembros de la funcin fija de servidor processadmin pueden finalizar los procesos que se ejecutan en una instancia de SQL Server. Los miembros de la funcin fija de servidor setupadmin pueden agregar y quitar los servidores vinculados. Los miembros de la funcin fija de servidor bulkadmin pueden ejecutar la instruccin BULK INSERT. La funcin fija de servidor diskadmin se utiliza para administrar archivos de disco. Los miembros de la funcin fija de servidor dbcreator pueden crear, modificar, quitar y restaurar cualquier base de datos. Cada inicio de sesin de SQL Server pertenece a la funcin de servidor public. Cuando a una entidad de seguridad de servidor no se le han concedido ni denegado permisos especficos en un objeto que puede protegerse, el usuario hereda los permisos concedidos a la funcin public en ese objeto. Asigne solamente permisos pblicos en cualquier objeto cuando desee que el objeto est disponible para todos los usuarios.

setupadmin

bulkadmin

diskadmin

dbcreator

public

Funciones en el nivel de base


Para administrar con facilidad los permisos en las bases de datos, SQL Server proporciona varias funciones, que son las entidades de seguridad que agrupan a otras entidades de seguridad. Son como los grupos del sistema operativo Microsoft Windows. Las funciones del nivel de base de datos se aplican a toda la base de datos en lo que respecta a su mbito de permisos. Existen dos tipos de funciones de nivel de base de datos en SQL Server: las funciones fijas de base de datos, que estn predefinidas en la base de datos, y lasfunciones flexibles de base de datos, que pueden crearse. Las funciones de base de datos fijas se definen en el nivel de base de datos y existen en cada una de ellas. Los miembros de las funciones de base de datosdb_owner y db_securityadmin pueden administrar los miembros de las funciones de base de datos fijas. Sin embargo, slo los miembros de la funcin de base de datos db_owner pueden agregar miembros a la funcin de base de datos fija db_owner. Hay tambin algunas funciones fijas de base de datos con fines especiales en la base de datos msdb. Puede agregar cualquier cuenta de la base de datos y otras funciones de SQL Server a las funciones del nivel de base de datos. Cada miembro de una funcin de base de datos fija puede agregar otros inicios de sesin a esa misma funcin. En la tabla siguiente se muestran las funciones fijas del nivel de base de datos y sus capacidades. Estas funciones existen en todas las bases de datos.

Nombre de funcin de nivel de base de datos db_owner

Descripcin

Los miembros de la funcin de base de datos fija db_owner pueden realizar todas las actividades de configuracin y mantenimiento en la base de datos y tambin pueden quitar la base de datos. Los miembros de la funcin de base de datos fija db_securityadmin pueden modificar la pertenencia a funciones y administrar permisos. Si se agregan entidades de seguridad a esta funcin, podra habilitarse un aumento de privilegios no deseado. Los miembros de la funcin de base de datos fija db_accessadmin pueden agregar o quitar el acceso a la base de datos para inicios de sesin de Windows, grupos de Windows e inicios de sesin de SQL Server. Los miembros de la funcin de base de datos fija db_backupoperator pueden crear copias de seguridad de la base de datos. Los miembros de la funcin de base de datos

db_securityadmi n

db_accessadmin

db_backupoperat or

db_ddladmin

fija db_ddladmin pueden ejecutar cualquier comando del lenguaje de definicin de datos (DDL) en una base de datos. db_datawriter Los miembros de la funcin de base de datos fija db_datawriter pueden agregar, eliminar o cambiar datos en todas las tablas de usuario. Los miembros de la funcin de base de datos fija db_datareader pueden leer todos los datos de todas las tablas de usuario. Los miembros de la funcin de base de datos fija db_denydatawriter no pueden agregar, modificar ni eliminar datos de tablas de usuario de una base de datos. Los miembros de la funcin de base de datos fija db_denydatareader no pueden leer datos de las tablas de usuario dentro de una base de datos.

db_datareader

db_denydatawrit er

db_denydataread er

AGREGAR INICIO DE SESIN EXEC sp_addsrvrolemember 'administ','securityadmin' PARA ASIGNARLE EL TIPO DE CUENTA DEL INICIO DE SECION OTRO: PROPIEDADES DE LA CUENTA EN INICIOS DE SECION Y A FUNCIONES DE SERVIDOR, Y DESACTIVAMOS O ACTIVAMOS COMO QERAMOS EXEC sp_dropsrvrolemember 'administ','securityadmin' para eliminar o qitar el permiso. EXEC sp_denylogin [administ] con esto decimos q el usuario no pueda entrar, como bloqueado pero no eliminado db_owner.- todos los miembros pueden realizar todas las actividades de mantenimiento de la base de datos y pueden qitar la base de adtos db_securityadmin.- pueden modificar la pertenencia a funciones y administrar permisos. db_backupoperator.- permite crear una copia de seguridad de la base de datos db_ddladmin.- los miembros q pertenecen a esta funcion pueden ejecutar cualqier comando del lenguaje de definicion de datos(bloque .dll) db_datawriter.- pueden agregar,eliminar o cambiar datos en todas las tablas de usuarios. db_datareader.- los mienbros de esta funcion pueden consulatar los datos de las tablas de usuarios. db_denydatawriter.- los miembros de esta funcion no pueden agregar, modificar ni eliminar datos de las tablas de la base de datos. db_denydatareader.- los miembros de esta funcion no pueden leer datos de las tablas de usuarios dentro de una base de datos. db_accesadmin.- los miembros de esta funcion pueden agregar o quitar el acceso a la base de datos para inicios de secion de windows, grupos de windows, e inicios de secion de sql server.

Você também pode gostar