Partage via


Notification de fraude Azure - Mettre à jour l’état des événements de fraude

S’applique à : API de l’Espace Partenaires

Après avoir examiné les activités de fraude pour chaque ressource Azure signalée et déterminé le comportement comme frauduleux ou légitime, vous pouvez utiliser cette API pour mettre à jour l’état de l’événement de fraude avec la raison appropriée.

Note

Cette API met à jour uniquement l’état de l’événement, elle ne résout pas l’activité de fraude au nom des partenaires CSP.

Depuis mai 2023, les partenaires pilotes peuvent utiliser cette API avec le nouveau modèle d’événements. Avec le nouveau modèle, vous pouvez mettre à jour de nouveaux types d’alertes à mesure qu’elles sont ajoutées au système, par exemple, l’utilisation anormale du calcul, l’exploration de données de chiffrement, l’utilisation d’Azure Machine Learning et les notifications d’avis d’intégrité des services.

Conditions préalables

  • Informations d’identification telles que décrites dans Authentification de l’Espace partenaires. Ce scénario prend en charge l’authentification avec les informations d’identification app+utilisateur.

Requête REST

Syntaxe de la requête

Méthode URI de requête
POST {baseURL}/v1/fraudEvents/subscription/{subscriptionId}/status

En-têtes de requête

Corps de la demande

Aucun.

Exemple de requête

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

Paramètre d’URI

Utilisez les paramètres de requête facultatifs suivants lors de la création de la requête.

Nom Type Obligatoire Description
SubscriptionId chaîne Oui ID d’abonnement Azure présentant des activités de minage de crypto

Corps de la demande

Propriété Type Obligatoire Description
eventIds chaîne[] Non Conservez eventIds comme vides si vous souhaitez mettre à jour l’état de tous les événements de fraude sous l’ID d’abonnement donné
eventStatus chaîne Non État de l’alerte de fraude. Le statut peut être Actif, Résolu, ou En cours d’investigation.
resolvedReason chaîne Oui Lorsque l’événement de fraude est résolu, définissez un code de raison approprié, les codes de raison acceptés sont Fraude ou Ignorer

Réponse REST

En cas de succès, cette méthode renvoie une collection d’événements de fraude dans le corps de la réponse.

Réussite de la réponse et codes d’erreur

Chaque réponse est fournie avec un code d’état HTTP qui indique la réussite ou l’échec et plus d’informations de débogage. Utilisez un outil de suivi réseau pour lire ce code, le type d’erreur et d’autres paramètres. Pour obtenir la liste complète, consultez Codes d’erreur.

Exemple de réponse

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

Requête REST avec l’en-tête X-NewEventsModel

Syntaxe de la requête

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

En-têtes de requête

Corps de la demande


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

Exemple de requête

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

Paramètre d’URI

Utilisez les paramètres de requête facultatifs suivants lors de la création de la requête.

Nom Type Obligatoire Description
SubscriptionId chaîne Oui ID d’abonnement Azure présentant des activités de minage de crypto

Corps de la demande

Propriété Type Obligatoire Description
eventIds chaîne[] Non Conservez eventIds comme vide si vous souhaitez mettre à jour l’état de tous les événements de fraude sous l’ID d’abonnement donné
eventStatus chaîne Oui Définissez-le sur Résoudre pour résoudre l’événement de fraude ou définissez-le sur Enquête pour enquêter sur un événement de fraude.
resolvedReason chaîne Oui Lorsque l’événement de fraude est résolu, définissez un code de raison approprié, les codes de raison acceptés sont Fraude ou Ignorer

Réponse REST

En cas de succès, cette méthode renvoie une collection d’événements de fraude avec des attributs étendus dans le corps de la réponse.

Réussite de la réponse et codes d’erreur

Chaque réponse est fournie avec un code d’état HTTP qui indique la réussite ou l’échec et plus d’informations de débogage. Utilisez un outil de suivi réseau pour lire ce code, le type d’erreur et d’autres paramètres. Pour obtenir la liste complète, consultez Codes d’erreur.

Exemple de réponse

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

        }
    }
]
Propriété Type Description
eventTime Date/Heure Heure à laquelle l’alerte a été détectée
eventId chaîne Identificateur unique de l’alerte
partnerTenantId chaîne ID de locataire du partenaire associé à l’alerte
partnerFriendlyName chaîne Nom convivial du locataire partenaire
customerTenantId chaîne ID de locataire du client associé à l’alerte
customerFriendlyName chaîne Nom convivial du locataire client
subscriptionId ficelle Identifiant d’abonnement du locataire client
subscriptionType chaîne Type d’abonnement du client
entityId chaîne Identificateur unique de l’alerte
entityName chaîne Nom de l’entité compromise
entityUrl chaîne URL de l’entité de la ressource
hitCount chaîne Nombre de connexions détectées entre firstObserved et lastObserved
catalogOfferId chaîne ID de catégorie d’offre moderne de l’abonnement
eventStatus chaîne État de l’alerte : Actif, Examen ou Résolu
serviceName chaîne Nom du service Azure associé à l’alerte
resourceName chaîne Nom de la ressource Azure associée à l’alerte
resourceGroupName chaîne Nom du groupe de ressources Azure associé à l’alerte
firstOccurrence date et heure Heure de début de l’impact de l’alerte (heure du premier événement ou activité inclus dans l’alerte)
lastOccurrence date et heure Heure de fin de l’alerte d’impact (heure du dernier événement ou activité inclus dans l’alerte)
resolvedReason chaîne Raison fournie par le partenaire pour répondre à l’état de l’alerte
resolvedOn date et heure Heure à laquelle l’alerte a été résolue
resolvedBy chaîne Utilisateur qui a résolu l’alerte
firstObserved date et heure Heure de début de l’impact de l’alerte (heure du premier événement ou activité inclus dans l’alerte)
lastObserved Date/Heure Heure de fin de l’alerte d’impact (heure du dernier événement ou activité inclus dans l’alerte)
eventType chaîne Type d’alerte : ServiceHealthSecurityAdvisory, UsageAnomalyDetection, MultiRegionVirtualMachineScaleSetDeploymentAnomaly, NetworkConnectionsToCryptoMiningPools, VirtualMachineDeploymentAnomaly, MultiRegionMachineLearningUsageAnomaly
severity chaîne Gravité de l’alerte (Valeurs : Faible, Moyen, Élevé)
confidenceLevel chaîne Niveau de confiance de l’alerte (Valeurs : Faible, Moyen, Élevé)
displayName chaîne Nom d'affichage convivial pour l'alerte selon le type d’alerte
description chaîne Description de l’alerte
country chaîne Code de pays pour le locataire partenaire
valueAddedResellerTenantId ficelle ID de locataire du revendeur à valeur ajoutée associé au locataire partenaire et au locataire client
valueAddedResellerFriendlyName chaîne Nom convivial du revendeur à valeur ajoutée
subscriptionName chaîne Nom de l’abonnement du locataire client
affectedResources json Array Liste des ressources affectées ; les ressources affectées peuvent être vides pour différents types d’alertes, auquel cas le partenaire doit vérifier l’utilisation et la consommation au niveau de l’abonnement
additionalDetails Objet Json Dictionnaire d’autres paires clé-valeurs détaillées requises pour identifier et gérer l’alerte de sécurité
isTest chaîne Si une alerte est générée pour le test, elle est définie sur true ou false
activityLogs chaîne Journaux d’activité pour l’alerte