Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Эта статья содержит свойства и схему для событий подписки Azure. Общие сведения о схемах событий см. в статье Схема событий службы "Сетка событий Azure".
Подписки Azure и группы ресурсов выдают одинаковые типы событий. Типы событий связаны с изменениями ресурсов или действиями. Основное различие заключается в том, что группы ресурсов выдают события для ресурсов в группе ресурсов, а подписки Azure выдают события для ресурсов в подписке.
События ресурсов создаются для операций PUT, PATCH, POST и DELETE, которые отправляются management.azure.com. Операции GET не создают события. Операции, отправленные в плоскость данных (например myaccount.blob.core.windows.net, не создают события). События действия предоставляют данные о событиях для операций, таких как перечисление ключей для ресурса.
При подписке на события для подписки Azure конечная точка получает все события для этой подписки. События могут включать событие, которое вы хотите увидеть, например обновление виртуальной машины, но и события, которые не важны для вас, например запись новой записи в журнале развертывания. Вы можете получать все события в конечной точке и писать код, обрабатывающий события, которые нужно обрабатывать. Кроме того, можно задать фильтр при создании подписки на события.
Для программной обработки событий можно сортировать события, просматривая operationName значение. Например, конечная точка события может обрабатывать только события для операций, равных Microsoft.Compute/virtualMachines/write или Microsoft.Storage/storageAccounts/write.
Субъект события — это идентификатор ресурса ресурса, который является целью операции. Чтобы отфильтровать события для ресурса, укажите идентификатор ресурса при создании подписки на события. Чтобы фильтровать по типу ресурса, используйте значение в следующем формате: /subscriptions/<subscription-id>/resourcegroups/<resource-group>/providers/Microsoft.Compute/virtualMachines
Доступные типы событий
Подписки Azure выдают события управления из Azure Resource Manager, например при создании виртуальной машины или удалении учетной записи хранения.
| Тип события | Description |
|---|---|
| Microsoft.Resources.ResourceActionCancel | Вызывается при отмене действия над ресурсом. |
| Microsoft.Resources.ResourceActionFailure | Вызывается при сбое действия в ресурсе. |
| Microsoft.Resources.ResourceActionSuccess | Вызывается при успешном выполнении действия в ресурсе. |
| Microsoft.Resources.ResourceDeleteCancel | Вызывается при отмене операции удаления. Это событие происходит при отмене развертывания шаблона. |
| Microsoft.Resources.ResourceDeleteFailure | Вызывается при сбое операции удаления. |
| Microsoft.Resources.ResourceDeleteSuccess | Вызывается при успешном выполнении операции удаления. |
| Microsoft.Resources.ResourceWriteCancel | Вызывается при отмене операции создания или обновления. |
| Microsoft.Resources.ResourceWriteFailure | Вызывается при сбое операции создания или обновления. |
| Microsoft.Resources.ResourceWriteSuccess | Вызывается при успешном создании или обновлении операции. |
Пример события
В следующем примере показана схема события ResourceWriteSuccess . Та же схема используется для событий ResourceWriteFailure и ResourceWriteCancel с различными значениями eventType.
[{
"subject": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"topic": "/subscriptions/{subscription-id}",
"type": "Microsoft.Resources.ResourceWriteSuccess",
"time": "2018-07-19T18:38:04.6117357Z",
"id": "4db48cba-50a2-455a-93b4-de41a3b5b7f6",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"action": "Microsoft.Storage/storageAccounts/write",
"evidence": {
"role": "Subscription Admin"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"_claim_names": "{\"groups\":\"src1\"}",
"_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}",
"http://schemas.microsoft.com/claims/authnclassreference": "1",
"aio": "{token}",
"http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}",
"e_exp": "{expiration}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}",
"ipaddr": "{IP-address}",
"name": "{full-name}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"onprem_sid": "{ID}",
"puid": "{ID}",
"http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}",
"http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"resourceProvider": "Microsoft.Storage",
"resourceUri": "/subscriptions/{subscription-id}/resourcegroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"operationName": "Microsoft.Storage/storageAccounts/write",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"specversion": "`1.0"
}]
В следующем примере показана схема события ResourceDeleteSuccess . Та же схема используется для событий ResourceDeleteFailure и ResourceDeleteCancel с различными значениями eventType.
[{
"subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"source": "/subscriptions/{subscription-id}",
"type": "Microsoft.Resources.ResourceDeleteSuccess",
"time": "2018-07-19T19:24:12.763881Z",
"id": "19a69642-1aad-4a96-a5ab-8d05494513ce",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"action": "Microsoft.Storage/storageAccounts/delete",
"evidence": {
"role": "Subscription Admin"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"_claim_names": "{\"groups\":\"src1\"}",
"_claim_sources": "{\"src1\":{\"endpoint\":\"{URI}\"}}",
"http://schemas.microsoft.com/claims/authnclassreference": "1",
"aio": "{token}",
"http://schemas.microsoft.com/claims/authnmethodsreferences": "rsa,mfa",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/2012/01/devicecontext/claims/identifier": "{ID}",
"e_exp": "262800",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname": "{last-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname": "{first-name}",
"ipaddr": "{IP-address}",
"name": "{full-name}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"onprem_sid": "{ID}",
"puid": "{ID}",
"http://schemas.microsoft.com/identity/claims/scope": "user_impersonation",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}",
"http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name": "{user-name}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn": "{user-name}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"httpRequest": {
"clientRequestId": "{ID}",
"clientIpAddress": "{IP-address}",
"method": "DELETE",
"url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}?api-version=2018-02-01"
},
"resourceProvider": "Microsoft.Storage",
"resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.Storage/storageAccounts/{storage-name}",
"operationName": "Microsoft.Storage/storageAccounts/delete",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"specversion": "1.0"
}]
В следующем примере показана схема события ResourceActionSuccess . Та же схема используется для событий ResourceActionFailure и ResourceActionCancel с различными значениями eventType.
[{
"subject": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"source": "/subscriptions/{subscription-id}",
"type": "Microsoft.Resources.ResourceActionSuccess",
"time": "2018-10-08T22:46:22.6022559Z",
"id": "{ID}",
"data": {
"authorization": {
"scope": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"action": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action",
"evidence": {
"role": "Contributor",
"roleAssignmentScope": "/subscriptions/{subscription-id}",
"roleAssignmentId": "{ID}",
"roleDefinitionId": "{ID}",
"principalId": "{ID}",
"principalType": "ServicePrincipal"
}
},
"claims": {
"aud": "{audience-claim}",
"iss": "{issuer-claim}",
"iat": "{issued-at-claim}",
"nbf": "{not-before-claim}",
"exp": "{expiration-claim}",
"aio": "{token}",
"appid": "{ID}",
"appidacr": "2",
"http://schemas.microsoft.com/identity/claims/identityprovider": "{URL}",
"http://schemas.microsoft.com/identity/claims/objectidentifier": "{ID}",
"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier": "{ID}", "http://schemas.microsoft.com/identity/claims/tenantid": "{ID}",
"uti": "{ID}",
"ver": "1.0"
},
"correlationId": "{ID}",
"httpRequest": {
"clientRequestId": "{ID}",
"clientIpAddress": "{IP-address}",
"method": "POST",
"url": "https://management.azure.com/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey/listKeys?api-version=2017-04-01"
},
"resourceProvider": "Microsoft.EventHub",
"resourceUri": "/subscriptions/{subscription-id}/resourceGroups/{resource-group}/providers/Microsoft.EventHub/namespaces/{namespace}/AuthorizationRules/RootManageSharedAccessKey",
"operationName": "Microsoft.EventHub/namespaces/AuthorizationRules/listKeys/action",
"status": "Succeeded",
"subscriptionId": "{subscription-id}",
"tenantId": "{tenant-id}"
},
"specversion": "1.0"
}]
Свойства события
Событие содержит следующие данные верхнего уровня:
| Недвижимость | Тип | Description |
|---|---|---|
source |
струна | Полный путь ресурса к источнику события. Это поле недоступно для записи. Сетка событий предоставляет это значение. |
subject |
струна | Заданный издателем путь к теме события. |
type |
струна | Один из зарегистрированных типов событий для этого источника событий. |
time |
струна | Время генерирования события определяется на основе времени UTC поставщика. |
id |
струна | Уникальный идентификатор события. |
data |
объект | Данные события подписки. |
specversion |
струна | Версия спецификации схемы CloudEvents. |
Объект данных имеет следующие свойства:
| Недвижимость | Тип | Description |
|---|---|---|
authorization |
объект | Запрошенная авторизация для операции. |
claims |
объект | Свойства утверждений. Дополнительные сведения см. в спецификации JWT. |
correlationId |
струна | Идентификатор операции для устранения неполадок. |
httpRequest |
объект | Сведения об операции. Этот объект включается только при обновлении существующего ресурса или удалении ресурса. |
resourceProvider |
струна | Поставщик ресурсов для операции. |
resourceUri |
струна | URI ресурса в операции. |
operationName |
струна | Предпринятая операция. |
status |
струна | Состояние операции. |
subscriptionId |
струна | Идентификатор подписки ресурса. |
tenantId |
струна | Идентификатор клиента ресурса. |
Практические руководства и другие учебные материалы
| Название | Description |
|---|---|
| Руководство по службе автоматизации Azure с помощью Службы "Сетка событий" и Microsoft Teams | Создайте виртуальную машину, которая отправляет событие. Событие активирует модуль Runbook службы автоматизации, который тегирует виртуальную машину и запускает сообщение, которое отправляется в канал Microsoft Teams. |
| Практическое руководство. Подписка на события через портал | Используйте портал для подписки на события для подписки Azure. |
| Azure CLI: подписка на события для подписки Azure | Пример скрипта, который создает подписку Сетки событий в подписку Azure и отправляет события в веб-перехватчик. |
| PowerShell: подписка на события для подписки Azure | Пример скрипта, который создает подписку Сетки событий в подписку Azure и отправляет события в веб-перехватчик. |
Дальнейшие шаги
- См. общие сведения о службе "Сетка событий Azure".
- Дополнительные сведения о создании подписки на Сетку событий Azure см. в статье Схема подписки для службы "Сетка событий".