Благодаря @sepupic, его / ее ответ правильный. Оказывается, на самом деле я использую MS SQL Server 2012, поэтому мне удалось реализовать концепцию Contained Database. Шаги, перечисленные на связанных страницах в ответе @sepupic, мне не помогли. Я нашел этот один и соединил этот скрипт. Вот что он делает:
- Изменяет
'contained database authentication'
на 1 для экземпляра MS SQL Server
- Запуски
RECONFIGURE
- Создает автономную базу данных
- Создает пользователя для базы данных
Вот сценарий:
USE master;
GO;
EXEC sp_configure 'contained database authentication', 1;
GO;
RECONFIGURE;
GO;
CREATE DATABASE ContainedDB2
CONTAINMENT = PARTIAL;
GO;
USE ContainedDB2;
GO;
CREATE USER cduser2
WITH PASSWORD = N'Pa$$word',
DEFAULT_SCHEMA = dbo;
GO;
Затем вы просто настраиваете соединение с содержащейся базой данных в разделе, который начинается с
Вход в систему и проверка прав доступа пользователя к автономной базе данных
Используя сценарий, который я собрал, и настроив соединение в разделе, который я упомянул, он настраивается таким образом, что вы подключаетесь к серверу с созданным пользователем, и этот пользователь может видеть только те базы данных, которые вам нужны. Вы должны настроить пользователя на наличие разрешений, таких как роль db db_datareader
в содержащейся базе данных, но инструкции о том, как делать эти типы вещей, легко найти, если вы будете искать их. Еще раз спасибо @sepupic за то, что я начал придумывать ответ.