Condividi tramite


Notifica di frode di Azure - Aggiornare lo stato degli eventi illeciti

si applica a: API del Centro partner

Dopo aver esaminato le attività di frode per ogni risorsa di Azure segnalata e determinato il comportamento come fraudolento o legittimo, è possibile usare questa API per aggiornare lo stato degli eventi di frode con il motivo appropriato.

Nota

Questa API aggiornerà solo lo stato dell'evento, non risolverà l'attività di frode per conto dei partner CSP.

A partire da maggio 2023, i partner pilota possono usare questa API con il Nuovo Modello di Eventi . Con il nuovo modello, è possibile aggiornare nuovi tipi di avvisi man mano che vengono aggiunti al sistema, ad esempio, utilizzo anomalo del calcolo, crypto mining, utilizzo di Azure Machine Learning e notifiche di avviso sull'integrità dei servizi.

Prerequisiti

Richiesta REST

Sintassi della richiesta

Metodo URI della richiesta
POST {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status

Intestazioni della richiesta

Corpo della richiesta

Nessuno.

Esempio di richiesta

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

Parametro URI

Usare i parametri di query facoltativi seguenti durante la creazione della richiesta.

Nome Digitare Obbligatorio Descrizione
SubscriptionId corda L'ID sottoscrizione di Azure, che ha le attività di crypto-mining

Corpo della richiesta

Proprietà Digitare Obbligatorio Descrizione
eventIds string[] No Mantenere eventIds come vuoto se si vuole aggiornare lo stato per tutti gli eventi illeciti con l'ID sottoscrizione specificato
eventStatus corda No Stato dell'allerta di frode. Può essere attivo, risoltao in fase di indagine.
resolvedReason corda Quando viene risolto un evento di frode, impostare un codice motivo appropriato; i codici motivo accettati sono Frode o Ignora

Risposta REST

In caso di esito positivo, questo metodo restituisce una raccolta di eventi di frode nel corpo della risposta.

Codici di errore e esito positivo della risposta

Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per l'elenco completo, vedere codici di errore .

Esempio di risposta

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

Richiesta REST con l'intestazione X-NewEventsModel

Sintassi della richiesta

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

Intestazioni della richiesta

Corpo della richiesta


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

Esempio di richiesta

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

Parametro URI

Usare i parametri di query facoltativi seguenti durante la creazione della richiesta.

Nome Digitare Obbligatorio Descrizione
SubscriptionId corda ID della sottoscrizione di Azure che include attività di crypto-mining

Corpo della richiesta

Proprietà Digitare Obbligatorio Descrizione
eventIds string[] No Mantenere eventIds come vuoto se si vuole aggiornare lo stato per tutti gli eventi illeciti con l'ID sottoscrizione specificato
eventStatus corda Imposta su Risolvere per risolvere l'evento di frode o su Indagare per indagare un evento di frode.
resolvedReason corda Quando viene risolto un evento di frode, impostare un codice motivo appropriato. I codici motivo accettati sono frode o Ignora.

Risposta REST

In caso di esito positivo, questo metodo restituisce una raccolta di eventi Fraud con attributi estesi nel corpo della risposta.

Codici di errore e esito positivo della risposta

Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per l'elenco completo, vedere Codici di errore.

Esempio di risposta

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

        }
    }
]
Proprietà Digitare Descrizione
eventTime data e ora Ora in cui è stato rilevato l'avviso
eventId corda Identificatore univoco per l'avviso
partnerTenantId corda ID del tenant del partner associato all'avviso
partnerFriendlyName corda Nome amichevole per il tenant del partner
customerTenantId corda ID tenant del cliente associato all'avviso
customerFriendlyName corda Nome amichevole per il tenant del cliente
subscriptionId corda ID di sottoscrizione del tenant cliente
subscriptionType corda Tipo di sottoscrizione del tenant del cliente
entityId corda Identificatore univoco per l'avviso
entityName corda Nome dell'entità compromessa
entityUrl corda URL dell'entità della risorsa
hitCount corda Numero di connessioni rilevate tra firstObserved e lastObserved
catalogOfferId corda ID categoria dell'offerta moderna dell'abbonamento
eventStatus corda Stato dell'avviso: Attivo, Analisi o Risolto
serviceName corda Nome del servizio di Azure associato all'avviso
resourceName corda Nome della risorsa di Azure associata all'avviso
resourceGroupName corda Nome del gruppo di risorse di Azure associato all'avviso
firstOccurrence data e ora Ora di inizio dell'avviso di impatto (l'ora del primo evento o dell'attività inclusa nell'avviso)
lastOccurrence data e ora Ora di fine impatto dell'avviso (ora dell'ultimo evento o dell'attività inclusa nell'avviso)
resolvedReason corda Motivo fornito dal partner per risolvere lo stato dell'avviso
resolvedOn data e ora Ora in cui l'avviso è stato risolto
resolvedBy corda Utente che ha risolto l'avviso
firstObserved data e ora Ora di inizio dell'avviso di impatto (l'ora del primo evento o dell'attività inclusa nell'avviso)
lastObserved data e ora Ora di fine dell'avviso (ora dell'ultimo evento o dell'attività inclusa nell'avviso)
eventType corda Tipo di avviso: ServiceHealthSecurityAdvisory, UsageAnomalyDetection, MultiRegionVirtualMachineScaleSetDeploymentAnomaly, NetworkConnectionsToCryptoMiningPools, VirtualMachineDeploymentAnomaly, MultiRegionMachineLearningUsageAnomaly
severity corda Gravità dell'avviso (valori: Basso, Medio, Alto)
confidenceLevel corda Livello di attendibilità dell'avviso (valori: Basso, Medio, Alto)
displayName corda Nome visualizzato intuitivo per l'avviso, a seconda del tipo di avviso
description corda Descrizione dell'avviso
country corda Codice paese per il tenant partner
valueAddedResellerTenantId corda ID tenant del rivenditore a valore aggiunto associato al tenant partner e al tenant del cliente
valueAddedResellerFriendlyName corda Nome amichevole per il rivenditore a valore aggiunto
subscriptionName corda Nome della sottoscrizione dell'inquilino del cliente
affectedResources Array JSON Elenco delle risorse interessate; Le risorse interessate potrebbero essere vuote per diversi tipi di avviso, nel qual caso il partner deve controllare l'utilizzo e il consumo a livello di sottoscrizione.
additionalDetails Oggetto JSON Un dizionario di dettagli di altre coppie di chiave-valore necessarie per identificare e gestire l'avviso di sicurezza.
isTest corda Se viene generato un avviso per il test, verrà impostato su true oppure false
activityLogs corda Log dell'attività per l'allerta