2012-04-26 7 views
5

Quiero que un usuario inicie sesión en el servidor SQL y solo vea una base de datos. Este usuario no puede ser el propietario de la base de datos. He intentado NIEGAR CUALQUIER BASE DE DATOS PARA [nombre de usuario] y ahora quisiera OTORGAR para ver una única base de datos a [nombre de usuario] ¿es esto posible? ¿Cómo hago esto? Gracias.¿OTORGA un usuario para ver una única base de datos? (Niega ver el resto)

editar: para aclarar lo que quiero decir, no quiero que el usuario vea siquiera que existen otras bases de datos, no solo que no pueden entrar en la base de datos.

gracias!

+1

dba.stackexchange.com? – mmix

+0

mira esta respuesta http://stackoverflow.com/a/1430615/184572 –

Respuesta

9

Supongo que está hablando de SQL Server Management Studio aquí. En resumen, si no puede otorgar DBO al usuario (lo que es perfectamente comprensible), entonces NO hay actualmente una manera de lograr lo que desea.

Ha llegado tan cerca como se obtendrá mediante la emisión de

DENY VIEW ANY DATABASE TO <customerlogin> 

ocultar eficazmente todas las bases de datos del usuario. Sin hacer que el usuario tenga un DBO, no hay forma de volver a abrir la capacidad de vista a solo uno. Esta no es una función que haya sido añadida por el conocido SQL Expert de Mike Hotek.

Puede ver un debate mucho más extenso y detallado sobre este deseo en este hilo de MSDN.

http://social.msdn.microsoft.com/Forums/en/sqlsecurity/thread/a989ca87-660d-41c4-9dac-70b29a83ddfb

+0

También, posible duplicado: http://stackoverflow.com/questions/935018/hide-sql-database-from-management-studio – RThomas

Cuestiones relacionadas