Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Служба "Сетка событий Azure" позволяет управлять уровнем доступа различных пользователей для различных операций управления , таких как перечисление подписок на события, создание новых и создание ключей. В службе "Сетка событий" используется управление доступом на основе ролей (Azure RBAC).
Типы операций
Чтобы просмотреть список операций, поддерживаемых сеткой событий Azure, выполните следующую команду Azure CLI:
az provider operation show --namespace Microsoft.EventGrid
Следующие операции возвращают потенциально секретную информацию, которая отфильтровывается из обычных операций чтения. Ограничить доступ к этим операциям.
- Microsoft.EventGrid/eventSubscriptions/getFullUrl/action
- Microsoft.EventGrid/topics/listKeys/action
- Microsoft.EventGrid/topics/regenerateKey/action
Встроенные роли
Сетка событий предоставляет следующие три встроенные роли.
| Роль | Описание |
|---|---|
EventGrid EventSubscription Reader |
Позволяет читать подписки на события в Event Grid. |
EventGrid EventSubscription Contributor |
Позволяет управлять операциями с подписками на события Сетки событий. |
EventGrid Contributor |
Позволяет создавать ресурсы Сетки событий и управлять ими. |
EventGrid Data Sender |
Позволяет отправлять события в разделы Сетки событий. |
Роли Читатель подписки сетки событий и Автор подписки сетки событий предназначены для управления подписками на события. Эти роли необходимы для реализации доменов событий, так как они предоставляют пользователям разрешения, необходимые для подписки на темы в домене событий. Эти роли предназначены для подписки на события и не предоставляют доступа к действиям, например для создания тем.
Роль участника сетки событий позволяет создавать ресурсы сетки событий и управлять ими.
Примечание.
Выберите ссылки в первом столбце для перехода к статье с дополнительными сведениями о роли. Инструкции по назначению пользователей или групп ролям RBAC см. в этой статье.
Пользовательские роли
Если необходимо указать разрешения, отличные от встроенных ролей, создайте пользовательские роли.
В следующем примере определения ролей сетки событий предоставляют пользователям разные разрешения. Эти пользовательские роли отличаются от встроенных ролей, так как они предоставляют более широкий доступ, чем только подписки на события.
- EventGridReadOnlyRole.json: предоставляет операции только для чтения.
{
"Name": "Event grid read only role",
"Id": "7C0B6B59-A278-4B62-BA19-411B70753856",
"IsCustom": true,
"Description": "Event grid read only role",
"Actions": [
"Microsoft.EventGrid/*/read"
],
"NotActions": [
],
"AssignableScopes": [
"/subscriptions/<Subscription Id>"
]
}
- EventGridNoDeleteListKeysRole.json: предоставляет ограниченные действия после выполнения, но запрещает удалять действия.
{
"Name": "Event grid No Delete Listkeys role",
"Id": "B9170838-5F9D-4103-A1DE-60496F7C9174",
"IsCustom": true,
"Description": "Event grid No Delete Listkeys role",
"Actions": [
"Microsoft.EventGrid/*/write",
"Microsoft.EventGrid/eventSubscriptions/getFullUrl/action"
"Microsoft.EventGrid/topics/listkeys/action",
"Microsoft.EventGrid/topics/regenerateKey/action"
],
"NotActions": [
"Microsoft.EventGrid/*/delete"
],
"AssignableScopes": [
"/subscriptions/<Subscription id>"
]
}
- EventGridContributorRole.json: предоставляет все действия сетки событий.
{
"Name": "Event grid contributor role",
"Id": "4BA6FB33-2955-491B-A74F-53C9126C9514",
"IsCustom": true,
"Description": "Event grid contributor role",
"Actions": [
"Microsoft.EventGrid/*/write",
"Microsoft.EventGrid/*/delete",
"Microsoft.EventGrid/topics/listkeys/action",
"Microsoft.EventGrid/topics/regenerateKey/action",
"Microsoft.EventGrid/eventSubscriptions/getFullUrl/action"
],
"NotActions": [],
"AssignableScopes": [
"/subscriptions/<Subscription id>"
]
}
Пользовательские роли можно создавать с помощью PowerShell, Azure CLI и REST.
Шифрование при хранении
Служба Event Grid шифрует все события и данные, записанные на диск, с помощью управляемого корпорацией Майкрософт ключа, гарантируя, что данные зашифрованы в состоянии покоя. Кроме того, максимальный период времени хранения событий или данных составляет 24 часа в соответствии с политикой повторных попыток сетки событий. Event Grid автоматически удаляет все события или данные через 24 часа или в зависимости от меньшего значения, время жизни события.
Разрешения для подписок на события
Если вы используете обработчик событий, который не является веб-перехватчиком (например, концентратором событий или хранилищем очередей), требуется право записи на этот ресурс. Данная проверка разрешений предотвращает попытки неавторизованных пользователей отправить события в ресурс.
Чтобы использовать ресурс, который является источником события, необходимо иметь разрешение Microsoft.EventGrid/EventSubscriptions/Write. Эти права необходимы, потому что вы создаете новую подписку на уровне ресурса. Требуемый ресурс зависит от того, на какой раздел оформляется подписка: системный или пользовательский. В этом разделе описываются оба типа.
Системные разделы (издатели служб Azure)
В отношении системных разделов, если вы не являетесь владельцем или участником исходного ресурса, необходимо разрешение на запись новой подписки на события в области действия ресурса, который публикует событие. Ресурс имеет следующий формат: /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/{resource-provider}/{resource-type}/{resource-name}
Например, чтобы подписаться на событие в учетной записи хранения с именем myacct, требуется разрешение Microsoft.EventGrid/EventSubscriptions/Write для следующего ресурса: /subscriptions/####/resourceGroups/testrg/providers/Microsoft.Storage/storageAccounts/myacct
Пользовательские темы
Для пользовательских тем необходимо получить разрешение на создание новой подписки на события в пределах темы Event Grid. Ресурс имеет следующий формат: /subscriptions/{subscription-id}/resourceGroups/{resource-group-name}/providers/Microsoft.EventGrid/topics/{topic-name}
Например, чтобы подписаться на пользовательский раздел с именем mytopic, требуется разрешение Microsoft.EventGrid/EventSubscriptions/Write для следующего ресурса: /subscriptions/####/resourceGroups/testrg/providers/Microsoft.EventGrid/topics/mytopic
Связанный контент
- Общие сведения о службе "Сетка событий" см. в разделе Общие сведения о службе "Сетка событий Azure".