Доступ к группе AD в базе данных SQL Azure - PullRequest
0 голосов
/ 25 сентября 2019

У меня есть клиент, который создал базу данных SQL Azure и пытается предоставить доступ к своей локальной учетной записи группы безопасности в базе данных.Проблема, с которой мы сталкиваемся, заключается в том, что локальная группа называется «групповой учетной записью», то есть между словами есть пробел.Эта учетная запись синхронизируется с Azure AD.

Два вопроса

1) Как вы предоставляете доступ к группе безопасности в базе данных SQL Azure?Я знаю, что вы скажете использовать синтаксис, подобный приведенному ниже, но в моем случае это не работаетAzure AD для этой группы

СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ [name@domain.com] ОТ ВНЕШНЕГО ПРОВАЙДЕРА

Ответы [ 2 ]

1 голос
/ 26 сентября 2019

Во-первых, вам необходимо войти в базу данных Azure с учетной записью администратора AD.

Затем выполнить этот запрос (то же самое с предоставленным juunas), чтобы добавить локальную группу безопасности в базу данных SQL Azure.

CREATE USER [<Security Group Display Name>] FROM EXTERNAL PROVIDER WITH DEFAULT_SCHEMA = [<schema>];

Как вы сказали, в имени вашей «групповой учетной записи» есть пробел, я попытался выполнить ту же операцию, и она работает нормально, без ошибок.

Например, я захожу в базу данных SQL Azure сМой администратор AD выполнил этот запрос, чтобы создать групповую учетную запись 'test gp'.

CREATE USER [test gp] FROM EXTERNAL PROVIDER WITH DEFAULT_SCHEMA = [dbo];

При выполнении SELECT * FROM SYS.DATABASE_PRINCIPALS мы могли видеть, что группа была создана в базе данных SQL Azure

enter image description here

Я выполнил TSQL: EXEC sp_addrolemember 'db_owner', 'test gp';

Кажется, все в порядке, но при отключении базы данных SQL и попытке войти с учетной записью группы 'test gp@****.com'

Произошла ошибка: enter image description here

Вы также можете сослаться на эти блоги:

  1. Невозможно добавитьAzure AD группа с ':' в отображаемом имени для Azure SQL, я что-то упустил?
  2. NaСоглашения Ming в Active Directory для компьютеров, доменов, сайтов и подразделений

Я думаю, что база данных SQL Azure не поддерживает использование имени группы безопасности со специальным символом для входа в базу данных, например белогопробел (пусто).

Надеюсь, это поможет.

1 голос
/ 25 сентября 2019

Я использовал CREATE USER [Group Name] FROM EXTERNAL PROVIDER раньше, и это сработало.

...