Поделиться через


Управление ролями безопасности базы данных

Область применения: ✅Microsoft Fabric✅Azure Data Explorer

Субъекты получают доступ к ресурсам через модель управления доступом на основе ролей, где назначенные роли безопасности определяют доступ к ресурсам.

В этой статье вы узнаете, как использовать команды управления для просмотра существующих ролей безопасности и добавления и удаления связи субъекта к ролям безопасности на уровне базы данных.

Разрешения

Для выполнения этих команд необходимо иметь по крайней мере разрешения администратора базы данных.

Примечание.

Чтобы удалить базу данных, требуется по крайней мере разрешение участника Azure Resource Manager (ARM). Сведения о назначении разрешений ARM см. в статье "Назначение ролей Azure с помощью портал Azure".

Роли безопасности уровня базы данных

В следующей таблице показаны возможные роли безопасности на уровне базы данных и описаны разрешения, предоставленные для каждой роли.

Роль Разрешения
admins Просмотр и изменение сущностей базы данных и базы данных.
users Просмотрите базу данных и создайте новые сущности базы данных.
viewers Просмотр таблиц в базе данных, в которой RestrictedViewAccess не включен.
unrestrictedviewers Просмотр таблиц в базе данных даже в том месте, где включен Параметр RestrictedViewAccess . Субъект также должен иметь adminsviewersразрешения или users разрешения.
ingestors Прием данных в базу данных без доступа к запросу.
monitors Просмотр метаданных базы данных, таких как схемы, операции и разрешения.

Примечание.

Невозможно назначить viewer роль только для некоторых таблиц в базе данных. Различные подходы к предоставлению основного представления доступу к подмножествам таблиц см. в разделе "Управление доступом к представлению таблиц".

Отображение существующих ролей безопасности

Перед добавлением или удалением субъектов можно использовать .show команду, чтобы просмотреть таблицу со всеми участниками и ролями, которые уже установлены в базе данных.

Синтаксис

Чтобы отобразить все роли:

.showdatabase Имя базы данных principals

Чтобы отобразить роли, выполните приведенные действия.

.showdatabase principal Имя базы данных roles

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
DatabaseName string ✔️ Имя базы данных, для которой нужно получить список субъектов.

Пример

Следующая команда содержит список всех субъектов безопасности, имеющих доступ к Samples базе данных.

.show database Samples principals

Пример результата

Роль PrincipalType PrincipalDisplayName PrincipalObjectId PrincipalFQN
Администратор примеров базы данных Пользователь Microsoft Entra Абби Аткинс cd709aed-a26c-e3953dec735e aaduser=abbiatkins@fabrikam.com

Добавление и удаление связи субъекта к ролям безопасности

В этом разделе приведены синтаксис, параметры и примеры для добавления и удаления субъектов в роли безопасности и из нее.

Синтаксис

database Субъект роли ( Action DatabaseName [, субъект...] ) [skip-resultsописание]

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
Действие string ✔️ Команда .add, .dropили .set.
.add добавляет указанные субъекты, .drop удаляет указанные субъекты и .set добавляет указанные субъекты и удаляет все предыдущие.
DatabaseName string ✔️ Имя базы данных, для которой добавляются субъекты.
Роль string ✔️ Роль, назначаемая субъекту. Для баз данных роли могут быть admins, , users, viewers, ingestorsunrestrictedviewersили monitors.
Основной string ✔️ Один или несколько субъектов или управляемых удостоверений. Чтобы ссылаться на управляемые удостоверения, используйте формат App с помощью идентификатора объекта управляемого удостоверения или идентификатора клиента управляемого удостоверения (приложения). Инструкции по указанию этих субъектов см. в статье "Ссылки на субъекты и группы Microsoft Entra".
skip-results string Если указано, команда не вернет обновленный список субъектов базы данных.
Description string Текст, описывающий изменение, которое отображается при использовании .show команды.
Имя. Type Обязательно Описание
Действие string ✔️ Команда .add, .dropили .set.
.add добавляет указанные субъекты, .drop удаляет указанные субъекты и .set добавляет указанные субъекты и удаляет все предыдущие.
DatabaseName string ✔️ Имя базы данных, для которой добавляются субъекты.
Роль string ✔️ Роль, назначаемая субъекту. Для баз данных это может быть admins, , users, viewers, ingestorsunrestrictedviewersили monitors.
Основной string ✔️ Один или несколько субъектов. Инструкции по указанию этих субъектов см. в статье "Ссылки на субъекты и группы Microsoft Entra".
skip-results string Если указано, команда не вернет обновленный список субъектов базы данных.
Description string Текст, описывающий изменение, которое отображается при использовании .show команды.

Примечание.

Команда .set с none списком субъектов удаляет все субъекты указанной роли.

Примеры

В следующих примерах вы узнаете, как добавлять роли безопасности, удалять роли безопасности и добавлять и удалять роли безопасности в той же команде.

Добавление ролей безопасности с помощью .add

В следующем примере субъект добавляется в users роль в Samples базе данных.

.add database Samples users ('aaduser=imikeoein@fabrikam.com')

В следующем примере приложение добавляется в viewers роль в Samples базе данных.

.add database Samples viewers ('aadapp=4c7e82bd-6adb-46c3-b413-fdd44834c69b;fabrikam.com')

Удаление ролей безопасности с помощью drop

В следующем примере все субъекты в группе удаляются из admins роли Samples в базе данных.

.drop database Samples admins ('aadGroup=SomeGroupEmail@fabrikam.com')

Добавление новых ролей безопасности и удаление старых с помощью .set

В следующем примере удаляются существующие viewers и добавляются указанные субъекты, как viewers в Samples базе данных.

.set database Samples viewers ('aaduser=imikeoein@fabrikam.com', 'aaduser=abbiatkins@fabrikam.com')

Удаление всех ролей безопасности с помощью .set

Следующая команда удаляет все существующие viewers Samples в базе данных.

.set database Samples viewers none