Я думаю, это то, что мы очень любим делать.
--Step 1: (create a new user)
create LOGIN hello WITH PASSWORD='foo', CHECK_POLICY = OFF;
-- Step 2:(deny view to any database)
USE master;
GO
DENY VIEW ANY DATABASE TO hello;
-- step 3 (then authorized the user for that specific database , you have to use the master by doing use master as below)
USE master;
GO
ALTER AUTHORIZATION ON DATABASE::yourDB TO hello;
GO
Если вы уже создали пользователя и были назначены в эту базу данных ранее, выполнив
USE [yourDB]
CREATE USER hello FOR LOGIN hello WITH DEFAULT_SCHEMA=[dbo]
GO
, затем удалите его, выполнив приведенные ниже действия, и выполните шаги
USE yourDB;
GO
DROP USER newlogin;
GO
Для получения дополнительной информации перейдите по ссылкам:
Скрытие баз данных для входа в Microsoft Sql Server 2008R2 и выше