Udostępnij za pośrednictwem


Powiadomienie o oszustwie na platformie Azure — aktualizowanie stanu zdarzenia oszustwa

dotyczy: Interfejs API Centrum partnerskiego

Po zbadaniu działań związanych z oszustwami dla każdego zgłoszonego zasobu platformy Azure i określeniu zachowania jako fałszywego lub uzasadnionego, możesz użyć tego interfejsu API do zaktualizowania stanu zdarzenia oszustwa z odpowiednią przyczyną.

Notatka

Ten interfejs API zaktualizuje tylko stan zdarzenia. Nie rozwiąże on działań związanych z oszustwem w imieniu partnerów programu CSP.

Od maja 2023 r. piloci partnerzy mogą używać tego interfejsu API z nowym modelem wydarzeń . Nowy model umożliwia aktualizowanie nowych typów alertów w miarę dodawania ich do systemu, na przykład nietypowego użycia zasobów obliczeniowych, wyszukiwania kryptograficznego, użycia usługi Azure Machine Learning i powiadomień doradczych dotyczących kondycji usługi.

Warunki wstępne

Żądanie REST

Składnia żądania

Metoda URI żądania
POST {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status

Nagłówki żądań

Treść żądania

Żaden.

Przykład żądania

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"
}

Parametr identyfikatora URI

Podczas tworzenia żądania użyj następujących opcjonalnych parametrów zapytania.

Nazwa Typ Wymagane Opis
SubscriptionId struna Tak Identyfikator subskrypcji platformy Azure, który zawiera działania crypro-mining

Treść żądania

Własność Typ Wymagane Opis
eventIds string[] Nie Zachowaj identyfikatory eventId jako puste, jeśli chcesz zaktualizować stan wszystkich zdarzeń oszustwa w ramach danego identyfikatora subskrypcji
eventStatus struna Nie Stan alertu o oszustwie. Może to być aktywne, rozwiązanelub Badanie.
resolvedReason struna Tak Po rozwiązaniu zdarzenia oszustwa ustaw odpowiedni kod przyczyny, zaakceptowane kody przyczyn to oszustwa, ignoruj

Odpowiedź REST

W przypadku powodzenia ta metoda zwraca kolekcję zdarzeń oszustwa w treści odpowiedzi.

Kody powodzenia i błędów w odpowiedziach

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i więcej informacji o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i inne parametry. Aby uzyskać pełną listę, zobacz Kody błędów.

Przykład odpowiedzi

HTTP/1.1 200 OK
Content-Length: 313
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "partnerFriendlyName": "test partner",
        "customerTenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "customerFriendlyName": "test customer",
        "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
        "subscriptionType": "modern",
        "entityId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "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"
    }
]

Żądanie REST z nagłówkiem X-NewEventsModel

Składnia żądania

MethodRequest URI
POST {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status

Nagłówki żądań

Treść żądania


{
    "EventIds": ["string"],
    "EventStatus": "Resolved",
    "ResolvedReason": "Fraud"
}

Przykład żądania

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"
}

Parametr identyfikatora URI

Podczas tworzenia żądania użyj następujących opcjonalnych parametrów zapytania.

Nazwa Typ Wymagane Opis
SubscriptionId struna Tak Identyfikator subskrypcji platformy Azure, który zawiera aktywności crypto-mining.

Treść żądania

Własność Typ Wymagane Opis
eventIds string[] Nie Zachowaj identyfikatory zdarzeń jako puste, jeśli chcesz zaktualizować stan wszystkich zdarzeń oszustwa w ramach danego identyfikatora subskrypcji
eventStatus struna Tak Ustaw na Rozwiązywanie, aby rozwiązać przypadek oszustwa, lub ustaw na Badanie w celu zbadania przypadku oszustwa.
resolvedReason struna Tak Po rozwiązaniu zdarzenia oszustwa ustaw odpowiedni kod przyczyny, zaakceptowane kody przyczyn to Oszustwo lub Ignoruj

Odpowiedź REST

Jeśli ta metoda powiedzie się, zwraca kolekcję zdarzeń oszustwa z rozszerzonymi atrybutami w treści odpowiedzi.

Kody powodzenia i błędów odpowiedzi

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i więcej informacji o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i inne parametry. Aby uzyskać pełną listę, zobacz Kody błędów.

Przykład odpowiedzi

HTTP/1.1 200 OK
Content-Length: 313
Content-Type: application/json
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
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": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "partnerFriendlyName": "test partner",
        "customerTenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "customerFriendlyName": "test customer",
        "subscriptionId": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
        "subscriptionType": "modern",
        "entityId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
        "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": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
        "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"
            }
          ]"

        }
    }
]
Własność Typ Opis
eventTime znacznik czasu Czas wykrycia alertu
eventId struna Unikatowy identyfikator alertu
partnerTenantId struna Identyfikator dzierżawy partnera skojarzonego z alertem
partnerFriendlyName struna Przyjazna nazwa dla partnera najemcy
customerTenantId struna Identyfikator dzierżawcy klienta skojarzonego z alertem
customerFriendlyName struna Przyjazna nazwa najemcy klienta
subscriptionId struna Identyfikator subskrypcji klienta
subscriptionType struna Typ subskrypcji dzierżawy klienta
entityId struna Unikatowy identyfikator alertu
entityName struna Nazwa jednostki, która została naruszona
entityUrl struna Adres URL jednostki zasobu
hitCount struna Liczba wykrytych połączeń między elementami firstObserved i lastObserved
catalogOfferId struna Identyfikator kategorii nowoczesnej oferty subskrypcji
eventStatus struna Stan alertu: Aktywne, Badanie lub Rozwiązane
serviceName struna Nazwa usługi platformy Azure skojarzonej z alertem
resourceName struna Nazwa zasobu platformy Azure skojarzonego z alertem
resourceGroupName struna Nazwa grupy zasobów platformy Azure skojarzonej z alertem
firstOccurrence data i godzina Czas rozpoczęcia wpływu alertu (czas pierwszego zdarzenia lub działania uwzględnionego w alercie)
lastOccurrence znacznik czasu Godzina zakończenia alertu (czas ostatniego zdarzenia lub działania uwzględnionego w alercie)
resolvedReason struna Przyczyna podana przez partnera dotycząca rozwiązywania statusu alertu
resolvedOn znacznik czasu Czas rozwiązania alertu
resolvedBy struna Użytkownik, który rozwiązał alert
firstObserved znacznik czasu Czas rozpoczęcia wpływu alertu (czas pierwszego zdarzenia lub działania uwzględnionego w alercie)
lastObserved data i czas Godzina zakończenia alertu (czas ostatniego zdarzenia lub działania uwzględnionego w alercie)
eventType struna Typ alertu: ServiceHealthSecurityAdvisory, UsageAnomalyDetection, MultiRegionVirtualMachineScaleSetDeploymentAnomaly, NetworkConnectionsToCryptoMiningPools, VirtualMachineDeploymentAnomaly, MultiRegionMachineLearningUsageAnomaly
severity struna Ważność alertu (wartości: Niski, Średni, Wysoki)
confidenceLevel struna Poziom ufności alertu (wartości: Niski, Średni, Wysoki)
displayName struna Przyjazna dla użytkownika nazwa wyświetlana alertu w zależności od typu alertu
description struna Opis alertu
country struna Kod kraju dla dzierżawcy partnera
valueAddedResellerTenantId struna Identyfikator dzierżawcy odsprzedawcy wartości dodanej powiązanego z dzierżawcą partnera oraz dzierżawcą klienta.
valueAddedResellerFriendlyName struna Przyjazna nazwa odsprzedawcy z wartością dodaną
subscriptionName struna Nazwa subskrypcji klienta dzierżawy
affectedResources tablica JSON Lista zasobów, których dotyczy problem; Zasoby, których dotyczy problem, mogą być puste dla różnych typów alertów, w tym przypadku partner musi sprawdzić użycie i zużycie na poziomie subskrypcji
additionalDetails Obiekt JSON Słownik innych par klucz-wartości wymaganych do identyfikowania alertu zabezpieczeń i zarządzania nim
isTest struna Jeśli alert jest wygenerowany na potrzeby testu, zostanie ustawiony na true, w przeciwnym razie na false
activityLogs struna Dzienniki aktywności dla alertu