#sql-server #authentication
#sql-сервер #аутентификация
Вопрос:
Здравствуйте, у меня возникли проблемы с правами на базу данных и созданием пользователя.
Я никогда раньше не пользовался SQL Server и приношу извинения, если я не все понимаю.
После долгих исследований я не могу этого понять.
Вот как выглядит моя база данных
master
|
|-- GroupDB1
| |-- dbo.TablePrivate
| |-- dbo.TableSecure
|
|-- GroupDB2
|-- dbo.TablePrivate
|-- dbo.TableSecure
Моя цель заключается в следующем: создайте пользователя в базе данных GroupDB1, который может получить доступ только к GroupDB1. Этот пользователь должен иметь возможность создавать других пользователей, но эти пользователи должны иметь возможность просматривать только базу данных GroupDB1.
Мне нужны три типа разрешений пользователя: один, позволяющий мне иметь все права на таблицы GroupDB1, другой, который может изменять только таблицу TablePrivate, а другой может видеть только таблицу TablePrivate.
Комментарии:
1. Самое простое решение — добавить пользователя в
db_owner
. Это соответствует вашим требованиям.2. Но пользователь сможет делать то, что он хочет, на всем сервере, чего я абсолютно хочу избежать.
3. Нет.
db_owner
дает вам только привилегии в базе данных. Не сервер.4. Хорошо, извините. Но как этот пользователь сможет создать другого пользователя? Поскольку SQL Server не разрешает создание пользователей за пределами master?
5. Я никогда не использовал его раньше, но вы, вероятно, хотите, чтобы база данных содержала пользователей: docs.microsoft.com/en-us/sql/relational-databases/security /…