Уведомление о мошенничестве в Azure: обновление состояния события мошенничества.
Область применения: API Центра партнеров
После изучения действий мошенничества для каждого сообщаемого ресурса Azure и определения поведения как мошеннического или законного, вы можете использовать этот API для обновления состояния события мошенничества с соответствующей причиной.
Примечание.
Этот API обновляет только состояние события, он не будет разрешать действия мошенничества от имени партнеров CSP.
По состоянию на май 2023 года пилотные партнеры могут использовать этот API с новой моделью событий. С помощью новой модели можно обновить новые типы оповещений по мере их добавления в систему, например аномального использования вычислений, интеллектуального анализа криптографии, Машинное обучение Azure уведомлений об использовании и работоспособности служб.
Необходимые компоненты
- Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с использованием учетных данных приложений и пользователей.
Запрос REST
Синтаксис запроса
Метод | URI запроса |
---|---|
POST | {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status |
Заголовки запросов
- Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
Нет.
Пример запроса
POST https://api.partnercenter.microsoft.com/v1/fraudEvents/subscription/{subscriptionId}/status} HTTP/1.1
Authorization: Bearer <token>
Host: api.partnercenter.microsoft.com
Content-Type: application/json
{
"EventIds": ["2a7064fb-1e33-4007-974e-352cb3f2c805_2edeb5b1-766f-4209-9271-3ddf27755afa"],
"EventStatus" : "Resolved",
"ResolvedReason": "Fraud"
}
Параметр универсального кода ресурса
При создании запроса используйте следующие необязательные параметры запроса.
Имя. | Type | Обязательно | Description |
---|---|---|---|
SubscriptionId | строка | Да | Идентификатор подписки Azure, имеющий действия Crypro-mining |
Текст запроса
Свойство | Тип | Обязательно | Description |
---|---|---|---|
eventIds | string[] | No | Сохраните eventIds как пустые, если вы хотите обновить состояние для всех событий мошенничества в соответствии с указанным идентификатором подписки |
eventStatus | строка | No | Состояние оповещения о мошенничестве. Он может быть активным, разрешенным или расследующим. |
resolvedReason | строка | Да | Если событие мошенничества разрешено, задайте соответствующий код причины, принятые коды причин — "Мошенничество " или "Игнорировать" |
Ответ REST
В случае успешного выполнения этот метод возвращает коллекцию событий мошенничества в теле ответа.
Коды успешного выполнения и ошибок в ответе
Каждый ответ поставляется с кодом состояния HTTP, который указывает на успешность или сбой и дополнительные сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и других параметров. См. полный список кодов ошибок.
Пример ответа
HTTP/1.1 200 OK
Content-Length: 313
Content-Type: application/json
MS-CorrelationId: 4cb80cbe-566b-4d8b-8b8f-af1454b73089
MS-RequestId: 566330a7-1e4b-4848-9c23-f135c70fd810
Date: Thu, 21 May 2020 22:29:17 GMT
[
{
"eventTime": "2021-12-08T00:25:45.69",
"eventId": "2a7064fb-1e33-4007-974e-352cb3f2c805_2edeb5b1-766f-4209-9271-3ddf27755afa",
"partnerTenantId": "348e932d-ef58-4347-8351-be51e4ec148c",
"partnerFriendlyName": "test partner",
"customerTenantId": "a248da34-6840-4c67-82d7-7f55ccd50d03",
"customerFriendlyName": "test customer",
"subscriptionId": "2a7064fb-1e33-4007-974e-352cb3f2c805",
"subscriptionType": "modern",
"entityId": "2edeb5b1-766f-4209-9271-3ddf27755afa",
"entityName": "sampleentity",
"entityUrl": "\\sample\\entity\\url",
"hitCount": "10",
"catalogOfferId": "ms-azr-17g",
"eventStatus": "Resolved",
"serviceName": "sampleservice",
"resourceName": "sampleresource",
"resourceGroupName": "sampleresourcegroup",
"firstOccurrence": "2021-12-08T00:25:45.69",
"lastOccurrence": "2021-12-08T00:25:45.69",
"resolvedReason": "Fraud",
"resolvedOn": "2021-12-08T11:25:45.69",
"resolvedBy": "adminagent@test.com"
}
]
ЗАПРОС REST с заголовком X-NewEventsModel
Синтаксис запроса
MethodRequest | URI-адрес |
---|---|
POST | {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status |
Заголовки запросов
- X-NewEventsModel: true
- Дополнительные сведения см. в статье о заголовках REST Центра партнеров.
Текст запроса
{
"EventIds": ["string"],
"EventStatus": "Resolved",
"ResolvedReason": "Fraud"
}
Пример запроса
POST https://api.partnercenter.microsoft.com/v1/fraudEvents/subscription/{subscriptionId}/status} HTTP/1.1
Authorization: Bearer <token>
Host: api.partnercenter.microsoft.com
Content-Type: application/json
X-NewEventsModel: true
{
"EventIds": ["2a7064fb-1e33-4007-974e-352cb3f2c805_2edeb5b1-766f-4209-9271-3ddf27755afa"],
"EventStatus" : "Resolved",
"ResolvedReason": "Fraud"
}
Параметр универсального кода ресурса
При создании запроса используйте следующие необязательные параметры запроса.
Имя. | Type | Обязательно | Description |
---|---|---|---|
SubscriptionId | строка | Да | Идентификатор подписки Azure, имеющий действия Crypro-mining |
Текст запроса
Свойство | Тип | Обязательно | Description |
---|---|---|---|
eventIds | string[] | No | Сохраните eventIds как пустые , если вы хотите обновить состояние для всех событий мошенничества в соответствии с указанным идентификатором подписки |
eventStatus | строка | Да | Присвойте ему значение "Разрешить", чтобы устранить событие мошенничества или установить его для расследования события мошенничества. |
resolvedReason | строка | Да | Если событие мошенничества разрешено, задайте соответствующий код причины, принятые коды причин — "Мошенничество " или "Игнорировать" |
Ответ REST
В случае успешного выполнения этот метод возвращает коллекцию событий мошенничества с расширенными атрибутами в тексте ответа.
Коды успешного выполнения и ошибок в ответе
Каждый ответ поставляется с кодом состояния HTTP, который указывает на успешность или сбой и дополнительные сведения об отладке. Используйте средство трассировки сети для чтения этого кода, типа ошибки и других параметров. См. полный список кодов ошибок.
Пример ответа
HTTP/1.1 200 OK
Content-Length: 313
Content-Type: application/json
MS-CorrelationId: 4cb80cbe-566b-4d8b-8b8f-af1454b73089
MS-RequestId: 566330a7-1e4b-4848-9c23-f135c70fd810
Date: Thu, 21 May 2020 22:29:17 GMT
[
{
"eventTime": "2021-12-08T00:25:45.69",
"eventId": "2a7064fb-1e33-4007-974e-352cb3f2c805_2edeb5b1-766f-4209-9271-3ddf27755afa",
"partnerTenantId": "348e932d-ef58-4347-8351-be51e4ec148c",
"partnerFriendlyName": "test partner",
"customerTenantId": "a248da34-6840-4c67-82d7-7f55ccd50d03",
"customerFriendlyName": "test customer",
"subscriptionId": "2a7064fb-1e33-4007-974e-352cb3f2c805",
"subscriptionType": "modern",
"entityId": "2edeb5b1-766f-4209-9271-3ddf27755afa",
"entityName": "sampleentity",
"entityUrl": "\\sample\\entity\\url",
"hitCount": "10",
"catalogOfferId": "ms-azr-17g",
"eventStatus": "Resolved",
"serviceName": "sampleservice",
"resourceName": "sampleresource",
"resourceGroupName": "sampleresourcegroup",
"firstOccurrence": "2021-12-08T00:25:45.69",
"lastOccurrence": "2021-12-08T00:25:45.69",
"resolvedReason": "Fraud",
"resolvedOn": "2021-12-08T11:25:45.69",
"resolvedBy": "adminagent@test.com",
"eventType": "NetworkConnectionsToCryptoMiningPools",
"severity": "Medium",
"confidenceLevel": "high",
"displayName": "sample display name",
"description": "sample description.",
"country": "US",
"valueAddedResellerTenantId": "897e68c5-fdf8-430e-bb54-3b386e0906b0",
"valueAddedResellerFriendlyName": "Sample Reseller Name",
"subscriptionName": "sample Subscription Name",
"affectedResources": [
{
"azureResourceId": "\\sample\\resource\\url ",
"type": "sample resource type"
}
],
"additionalDetails": {
"resourceid": "\\sample\\resource\\id ",
"resourcetype": "sample resource type",
"vM_IP": "[\r\n \"13.89.185.189\"\r\n]",
"miningPool_IP": "[\r\n \"104.243.33.118\"\r\n]",
"connectionCount": "31",
"cryptoCurrencyMiningPoolDomainName": "sample pool domain name"
},
"IsTest": "false",
"activityLogs": "[
{
"statusFrom": "Active",
"statusTo": "Investigating",
"updatedBy": "admin@testtestcsp022.onmicrosoft.com",
"dateTime": "2023-07-10T12:34:27.8016635+05:30"
},
{
"statusFrom": "Investigating",
"statusTo": "Resolved",
"updatedBy": "admin@testtestcsp022.onmicrosoft.com",
"dateTime": "2023-07-10T12:38:26.693182+05:30"
}
]"
}
}
]
Свойство | Тип | Описание |
---|---|---|
eventTime | datetime | Время обнаружения оповещения |
Eventid | строка | Уникальный идентификатор оповещения |
partnerTenantId | строка | Идентификатор клиента партнера, связанного с оповещением |
partnerFriendlyName | строка | Понятное имя для клиента партнера |
customerTenantId | строка | Идентификатор клиента, связанного с оповещением |
customerFriendlyName | строка | Понятное имя клиента |
subscriptionId | строка | Идентификатор подписки клиента |
subscriptionType | строка | Тип подписки клиента |
entityId | строка | Уникальный идентификатор оповещения |
entityName | строка | Имя скомпрометированного объекта |
entityUrl | строка | URL-адрес сущности ресурса |
hitCount | строка | Количество подключений, обнаруженных между firstObserved и lastObserved |
catalogOfferId | строка | Идентификатор современной категории предложения подписки |
eventStatus | строка | Состояние оповещения: активный, расследующий или разрешенный |
serviceName | строка | Имя службы Azure, связанной с оповещением |
resourceName | строка | Имя ресурса Azure, связанного с оповещением |
resourceGroupName | строка | Имя группы ресурсов Azure, связанной с оповещением |
firstOccurrence | datetime | Время начала оповещения (время первого события или действия, включенного в оповещение). |
lastOccurrence | datetime | Время окончания действия оповещения (время последнего события или действия, включенного в оповещение). |
resolvedReason | строка | Причина, предоставленная партнером по устранению состояния оповещения |
resolvedOn | datetime | Время разрешения оповещения |
resolvedBy | строка | Пользователь, который разрешил оповещение |
firstObserved | datetime | Время начала оповещения (время первого события или действия, включенного в оповещение). |
lastObserved | datetime | Время окончания действия оповещения (время последнего события или действия, включенного в оповещение). |
eventType | строка | Тип оповещения: ServiceHealthSecurityAdvisory, UsageAnomalyDetection, MultiRegionVirtualMachineScaleSetDeploymentAnomaly, Network Подключение ionsToCryptoMiningPools, VirtualMachineDeploymentAnomaly, MultiRegionMachine Обучение UsageAnomaly |
severity | строка | Уровень серьезности оповещения. Значения: низкий, средний, высокий |
confidenceLevel | строка | Уровень достоверности оповещения, значения — низкий, средний, высокий |
displayName | строка | Понятное отображаемое имя оповещения в зависимости от типа оповещения. |
description | строка | Описание оповещения |
country | string | Код страны для клиента партнера |
valueAddedResellerTenantId | строка | Идентификатор клиента добавленного торгового посредника, связанного с клиентом партнера и клиентом клиента |
valueAddedResellerFriendlyName | строка | Понятное имя добавленного торгового посредника |
subscriptionName | строка | Имя подписки клиента |
affectedResources | Массив json | Список затронутых ресурсов. Затронутые ресурсы могут быть пустыми для различных типов оповещений. В этом случае партнеру необходимо проверка использование и потребление на уровне подписки. |
additionalDetails | Объект Json | Словарь других пар "ключ-значения", необходимых для идентификации оповещения системы безопасности и управления ими. |
isTest | строка | Если для тестирования создается оповещение, оно будет иметь значение true или false. |
activityLogs | строка | Журналы действий для оповещения. |