Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

No ver databases de otros usuarios

Estas en el tema de No ver databases de otros usuarios en el foro de SQL Server en Foros del Web. Estimados; Mi pregunta es si es posible que los usuarios de mi mssql(2000) al ingresar a administrar su base de datos via Enterprise manager (Administrador ...
  #1 (permalink)  
Antiguo 15/10/2009, 12:27
Avatar de coffe  
Fecha de Ingreso: mayo-2008
Mensajes: 27
Antigüedad: 15 años, 11 meses
Puntos: 1
No ver databases de otros usuarios

Estimados;

Mi pregunta es si es posible que los usuarios de mi mssql(2000) al ingresar a administrar su base de datos via Enterprise manager (Administrador Corporativo) no vean las bases de datos de los otros usuarios.
desde ya muchas grax
  #2 (permalink)  
Antiguo 15/10/2009, 12:58
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No ver databases de otros usuarios

Si no tienen permisos, pues no podran
  #3 (permalink)  
Antiguo 15/10/2009, 14:41
Avatar de royrojas  
Fecha de Ingreso: diciembre-2004
Mensajes: 458
Antigüedad: 19 años, 4 meses
Puntos: 3
Respuesta: No ver databases de otros usuarios

eso depende del usuario con el que se esten conectando.

este usuario que dices solo deberia tebner permisos para ver la base de datos a la que tiene acceso, con eso ya no pude entrar a las bases de datos de los demas.
__________________
roy rojas
Programación en Español: DotNetcr.com
  #4 (permalink)  
Antiguo 16/10/2009, 13:55
Avatar de coffe  
Fecha de Ingreso: mayo-2008
Mensajes: 27
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: No ver databases de otros usuarios

yo nuca dije que entraban a otras bases .. lo que busco es que no vean las ortas bases de mis usuarios. Ese usuario solo puede tocar su base y no la de los demas (asi tiene que ser). Busco que no vea ninguma database que no sea de el.
  #5 (permalink)  
Antiguo 16/10/2009, 15:04
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No ver databases de otros usuarios

No se puede...........
  #6 (permalink)  
Antiguo 16/10/2009, 16:26
Avatar de royrojas  
Fecha de Ingreso: diciembre-2004
Mensajes: 458
Antigüedad: 19 años, 4 meses
Puntos: 3
Respuesta: No ver databases de otros usuarios

si se puede. aqui está el codigo

Código:
Begin 

Declare @dsql varchar(500) = ''
Declare @Username varchar(20) = 'nombre_usuario'
Declare @password varchar(20) = 'clave'
Declare @DBName varchar(20) = 'base_datos'

IF NOT EXISTS (SELECT * FROM sys.server_principals WHERE [name] = @Username)

Begin

Set @dsql ='create login ' + @Username + ' with password = N'''+ REPLACE(@password, '''', '''''') + ''', DEFAULT_DATABASE=' + QUOTENAME(@DBName) + ', CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF'

execute (@dsql)

set @dsql = 'use master; GRANT CONNECT SQL TO ' + QUOTENAME(@Username)

execute( @dsql )

End

--Deshabilita la posibilidad de ver otra base de datos que no sea maste tempdb o la propia

Set @dsql = 'use master; deny VIEW any DATABASE to ' + @Username

--Print @dsql

execute (@dsql)

End

--Agrega el usuario como dbo a la base de datos

Set @dsql = @DBName + '.dbo.sp_changedbowner ' + @Username

--Print @dsql

execute (@dsql)

codigo esta probado y ya se utilizo en produccion.
__________________
roy rojas
Programación en Español: DotNetcr.com

Última edición por royrojas; 16/10/2009 a las 16:31
  #7 (permalink)  
Antiguo 22/10/2009, 10:09
Avatar de coffe  
Fecha de Ingreso: mayo-2008
Mensajes: 27
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: No ver databases de otros usuarios

sos un groso voy a verlo
  #8 (permalink)  
Antiguo 22/10/2009, 10:29
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: No ver databases de otros usuarios

sysrojas: ¿Para que EDICION es tu query?
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:53.