Предоставьте доступ к нескольким базам данных через Azure AD в базе данных sql - PullRequest
1 голос
/ 25 июня 2019

Описание

Мы используем базу данных SQL Azure с несколькими базами данных на сервере. Можно предоставить разрешения для одной базы данных с помощью имени пользователя Azure AD, создав группу, скажем «DBReader». в AAD и назначьте группе роль «Читатель» через настройки сервера в портале Azure, а затем создайте пользователя при подключении к базе данных как CREATE USER [DBReaders] FROM EXTERNAL PROVIDER, что позволит подключиться к единой базе данных.

Задача

Мы хотели бы предоставить доступ на чтение для всех баз данных, чтобы пользователь мог видеть все базы данных с помощью одного подключения и не должен добавлять их отдельно. Обычно для этого вы создаете логин на сервере. Однако функция предварительного просмотра https://docs.microsoft.com/en-gb/sql/t-sql/statements/create-login-transact-sql?view=azuresqldb-mi-current,, которая позволяет CREATE LOGIN ... FROM EXTERNAL PROVIDER, недоступна для базы данных SQL Azure.

Вопрос

Есть ли какой-нибудь способ, которым мы не думали просто предоставить доступ ко всем базам данных через группу AAD?

1 Ответ

1 голос
/ 25 июня 2019

Есть ли какой-нибудь способ, которым мы не думали просто предоставить доступ ко всем базам данных через группу AAD?

Нет.За пределами управляемого экземпляра, для которого требуется минимум 4 vCores , пользователи базы данных SQL Azure должны быть добавлены в каждую базу данных.

Подходящее решение предполагает, что пользователь сможетпросмотреть все базы данных, к которым у него есть разрешения одновременно

Для базы данных SQL Azure для этого требуется, чтобы клиент подключился к Master и затем снова подключился для переключения баз данных. SQL Server Management Studio делает это, но другие клиенты не могут.

...