Управление ролями безопасности базы данных
Область применения: ✅Microsoft Fabric✅Azure Data Explorer
Субъекты получают доступ к ресурсам через модель управления доступом на основе ролей, где назначенные роли безопасности определяют доступ к ресурсам.
В этой статье вы узнаете, как использовать команды управления для просмотра существующих ролей безопасности и добавления и удаления связи субъекта к ролям безопасности на уровне базы данных.
Разрешения
Для выполнения этих команд необходимо иметь по крайней мере разрешения администратора базы данных.
Примечание.
Чтобы удалить базу данных, требуется по крайней мере разрешение участника Azure Resource Manager (ARM). Сведения о назначении разрешений ARM см. в статье "Назначение ролей Azure с помощью портал Azure".
Роли безопасности уровня базы данных
В следующей таблице показаны возможные роли безопасности на уровне базы данных и описаны разрешения, предоставленные для каждой роли.
Роль | Разрешения |
---|---|
admins |
Просмотр и изменение сущностей базы данных и базы данных. |
users |
Просмотрите базу данных и создайте новые сущности базы данных. |
viewers |
Просмотр таблиц в базе данных, в которой RestrictedViewAccess не включен. |
unrestrictedviewers |
Просмотр таблиц в базе данных даже в том месте, где включен Параметр RestrictedViewAccess . Субъект также должен иметь admins viewers разрешения или users разрешения. |
ingestors |
Прием данных в базу данных без доступа к запросу. |
monitors |
Просмотр метаданных базы данных, таких как схемы, операции и разрешения. |
Примечание.
Невозможно назначить viewer
роль только для некоторых таблиц в базе данных. Различные подходы к предоставлению основного представления доступу к подмножествам таблиц см. в разделе "Управление доступом к представлению таблиц".
Отображение существующих ролей безопасности
Перед добавлением или удалением субъектов можно использовать .show
команду, чтобы просмотреть таблицу со всеми участниками и ролями, которые уже установлены в базе данных.
Синтаксис
Чтобы отобразить все роли:
.show
database
Имя базы данных principals
Чтобы отобразить роли, выполните приведенные действия.
.show
database
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 , ingestors unrestrictedviewers или 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 , ingestors unrestrictedviewers или 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