В SQL Azure, как я могу создать пользователя только для чтения - PullRequest
28 голосов
/ 06 мая 2010

Я хотел бы создать пользователя SQL Azure и предоставить ему доступ только для чтения на нескольких БД. Какой сценарий можно использовать для достижения этой цели?

Ответы [ 3 ]

57 голосов
/ 06 мая 2010

Сценарий на чистом TSQL очень грязный, SQL Azure отключает команду USE, поэтому вы застреваете, открывая соединения с каждой БД, которая необходима для предоставления пользователю прав на чтение.

Это суть паттерна.

В основной базе данных:

CREATE LOGIN reader WITH password='YourPWD';
-- grant public master access
CREATE USER readerUser FROM LOGIN reader;

В каждой целевой БД (требуется отдельное соединение)

CREATE USER readerUser FROM LOGIN reader;
EXEC sp_addrolemember 'db_datareader', 'readerUser';
4 голосов
/ 31 марта 2012

ИЛИ ... Используйте консоль управления пользователями Azure - AUMC для управления логинами и пользователями.

Это проект с открытым исходным кодом, доступный на codeplex AUMC.codeplex.com

Описание проекта

Консоль управления пользователями Azure - AUMC - это пользователь Графический интерфейс (GUI), который управляет пользователями и логинами Azure. База данных SQL. Инструмент просто конвертирует ваши действия в T-SQL команд и выполните их в базе данных SQL Azure.

Быстрый простой инструмент с пользовательским интерфейсом! дон

Наслаждайтесь!

0 голосов
/ 06 ноября 2015

Вы можете создать нового пользователя, не создавая логин на master БД (для чего необходимо установить отдельное соединение)

CREATE USER user1 WITH password='<Strong_Password>';

https://azure.microsoft.com/en-us/documentation/articles/sql-database-manage-logins/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...