Tous les produits
Search
Centre de documentation

Fraud Detection:Device Fraud Detection event parameters and technical workflow

Dernière mise à jour :Aug 26, 2026

Appelez l'API côté serveur de Fraud Detection pour détecter les risques liés aux appareils, tels que les émulateurs, l'accès root et les environnements multi-instances, lors des opérations commerciales critiques. Cette rubrique présente les paramètres de requête, les paramètres de réponse, les codes d'erreur et l'intégration du SDK pour le service d'identification des risques liés aux appareils (édition Basic et édition Enhanced). Les scénarios applicables incluent la lutte contre la fraude lors des campagnes, la protection de la sécurité des comptes lors de l'inscription et de la connexion, ainsi que la collecte de coupons.

Éditions

L'identification des risques liés aux appareils est disponible en deux éditions pour répondre aux exigences de contrôle des risques propres à différents secteurs et étapes commerciales. Le tableau suivant compare l'édition Basic et l'édition Enhanced.

Fonctionnalité

Édition Basic

Édition Enhanced

Calcul en temps réel

Pris en charge

Pris en charge

Réponse du service

Tags de risque

Tags de risque et ID unique de l'appareil

Livraison vers Simple Log Service (SLS)

Non pris en charge

Pris en charge. Vous pouvez autoriser la livraison des journaux avec un stockage gratuit pendant un an.

Sélectionner une édition

  • Édition Basic : Convient aux scénarios nécessitant uniquement la détermination des tags de risque, comme l'identification si un appareil est un émulateur, s'il dispose d'un accès root ou s'il fonctionne dans un environnement multi-instances.

  • Édition Enhanced : Convient aux scénarios nécessitant un ID unique d'appareil pour le suivi inter-sessions, ou la livraison des journaux vers SLS pour une analyse approfondie.

Prérequis

Avant de commencer, assurez-vous que les prérequis suivants sont remplis :

  1. L'enregistrement du service pour Fraud Detection est terminé dans la console Alibaba Cloud Management Console.

  2. Un AccessKey ID et un AccessKey secret ont été obtenus. Utilisez un utilisateur RAM pour l'accès à l'API au lieu de la paire de clés AccessKey de votre compte Alibaba Cloud.

  3. L'AccessKey ID est autorisé avec la stratégie AliyunYundunSAFFullAccess. Pour plus d'informations, reportez-vous à Stratégies système pour SAF.

  4. Le kit de développement logiciel (SDK) client est intégré. Pour plus d'informations, reportez-vous à SDK pour Android.

Flux technique

Après avoir intégré le SDK de l'appareil, appelez l'API côté serveur du service d'identification des risques liés aux appareils de Fraud Detection lors des opérations commerciales critiques pour obtenir les résultats de la détection des risques. Un flux unique de détection des risques comprend les étapes suivantes :

  1. Initialisez le SDK : Appelez la méthode d'initialisation au démarrage de l'application. Lors de l'initialisation, le SDK collecte et signale de manière asynchrone les champs de base de l'appareil au serveur. Selon le système et le modèle de l'appareil, ce processus prend généralement 1 à 2 secondes.

  2. Obtenez le token de l'appareil : Une fois l'initialisation terminée, appelez la méthode locale du SDK pour obtenir le deviceToken.

  3. Appelez l'API côté serveur : Transmettez le deviceToken et d'autres champs métier (reportez-vous à la définition spécifique de l'événement). Le modèle de détection cloud calcule et renvoie le résultat de la détection en temps réel.

Device SDK workflow diagram

Paramètres d'entrée

Paramètre Service

Le paramètre Service spécifie l'édition du service. Différentes éditions utilisent les valeurs de paramètre Service suivantes.

Édition

Valeur du paramètre Service

Fonctions et fonctionnalités

Édition Basic

device_risk_intl

Prend en charge les tags de risque

Édition Enhanced

device_risk_pro_intl

Prend en charge l'ID unique de l'appareil, les tags de risque et la livraison des journaux

ServiceParameters

ServiceParameters contient les paramètres de requête métier au format JSON, correspondant au champ ServiceParameters dans Paramètres communs.

Champ

Description

Type de données

Exemple

Obligatoire

Remarques

deviceToken

Le deviceToken obtenu à partir du SDK pour Android

String

Tk9SSUQuMS*ZDNmNWY5NzQxOW1oLTE2MjI2NDIyNjc4MzAtZGZWFhdDgzMTBLUlVSU0VoWWVNcW82ZkZlZWmp3PT0=

Oui

Dans des conditions normales, la longueur du token est d'environ 600 octets. En cas de mauvaises conditions réseau, la longueur du token dépasse 2,5 Ko. Si un grand nombre de tokens longs sont générés, vérifiez d'abord si le réseau client est stable, puis assurez-vous que l'intervalle entre les appels SDK init et getSession est supérieur à 2 secondes.

deviceTokenBizId

L'ID unique spécifique au métier.

String

aes9ad0356da4df8c1f18bc349296d60

Non

Transmettez ce bizId lors de l'obtention du deviceToken à partir du SDK client pour lier le deviceToken à l'ID unique spécifique au métier. Lors de l'interrogation des résultats côté serveur, transmettez les deux valeurs ensemble. Assurez-vous que le bizId du client correspond à l'ID du serveur pour empêcher le remplacement du deviceToken.

Paramètres de réponse

Les paramètres de réponse du service d'identification des risques liés aux appareils incluent l'ID de l'appareil et les tags de risque de l'appareil.

{
  "code": 200,
  "message": "OK",
  "data": {
    "extend": "71d4ac517192c5309400548bf0d5357b", // Unique device ID
    "tags": "is_rooted,is_emulator"  // Device risk tags
  },
  "requestId": "AF17EC99-22AB-311E-1397-BCF37EC78C81"
}

ID de l'appareil

Le champ extend dans l'objet Data contient l'ID unique de l'appareil. Seule l'édition Enhanced renvoie ce champ.

Tags de risque de l'appareil

Le champ tags dans l'objet Data contient les résultats de la détection des risques. Si plusieurs tags sont renvoyés, ils sont séparés par des virgules. Le tableau suivant répertorie certains tags courants.

Tag de risque

Description

is_emulator

L'appareil est suspecté d'être un émulateur.

is_rooted

L'appareil est suspecté d'avoir un accès root.

is_virtual

L'appareil est suspecté de fonctionner dans un environnement multi-instances.

...

Connectez-vous à la console Fraud Detection et consultez davantage de descriptions de tags d'appareil sous Risk tag descriptions.

Pour plus d'informations, reportez-vous à Paramètres de réponse communs.

Codes d'erreur

Code

Description

200

La requête a réussi.

400

La valeur de ServiceParameters (paramètres d'événement) n'est pas valide.

402

Le QPS dépasse le quota acheté. La requête est limitée.

403

Autorisations insuffisantes. Le service n'est pas activé ou a expiré.

404

La valeur de Service (paramètre de service) n'est pas valide.

500

Une erreur interne du serveur s'est produite.

Intégration du SDK

L'exemple suivant utilise le SDK Java. Pour les autres langages de programmation, reportez-vous à Effectuer des appels d'API à l'aide d'un SDK.

Dépendances Maven

Ajoutez la dépendance Java Maven suivante :

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-saf</artifactId>
    <version>3.0.1</version>
</dependency>

Arbitrage des dépendances recommandé :

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-java-sdk-core</artifactId>
    <optional>true</optional>
    <version>4.5.25</version>
</dependency>
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.68.noneautotype</version>
</dependency>
<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <version>4.5.3</version>
</dependency>
<dependency>
    <groupId>io.opentracing</groupId>
    <artifactId>opentracing-util</artifactId>
    <version>0.31.0</version>
</dependency>

Code source du SDK Java

// The AccessKey pair of an Alibaba Cloud account has permissions on all API operations.
// Use a RAM user for API access and daily O&M.
// Do not save the AccessKey ID and AccessKey secret in your project code to prevent AccessKey leakage,
// which may compromise the security of all resources under your account.
// This example uses environment variables to read the RAM user AccessKey for API authentication.
// Before running this code, make sure the following environment variables are configured:
// ALIBABA_CLOUD_ACCESS_KEY_ID, ALIBABA_CLOUD_ACCESS_KEY_SECRET.
// Create and initialize a DefaultAcsClient instance. Initialize only once.
DefaultProfile profile = DefaultProfile.getProfile(
    "<REGION-ID>", // Region ID. ap-southeast-1 is recommended outside China. Must match the client SDK reporting domain.
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"),     // RAM user AccessKey ID
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")  // RAM user AccessKey secret
);
// HTTP connection pool configuration
HttpClientConfig clientConfig = HttpClientConfig.getDefault();
clientConfig.setMaxRequestsPerHost(6);
clientConfig.setMaxIdleConnections(20);
// HTTP timeout configuration
clientConfig.setReadTimeoutMillis(3000);
profile.setHttpClientConfig(clientConfig);
IAcsClient client = new DefaultAcsClient(profile);

// Send the request
ExecuteRequestSGRequest executeRequestRequest = new ExecuteRequestSGRequest();
// To specify a custom version number, modify it here. Default: 2019-05-21
executeRequestRequest.setVersion("2019-05-21");
// Specify the request method
executeRequestRequest.setSysMethod(MethodType.POST);
// Specify the protocol. Currently, only HTTPS is supported.
executeRequestRequest.setSysProtocol(ProtocolType.HTTPS);

// Product code of the device risk service: device_risk_intl or device_risk_pro_intl
String service = "device_risk_pro_intl";
executeRequestRequest.setService(service);
// Business parameters. Set only the parameters you need.
Map<String, Object> serviceParams = new HashMap<String, Object>();
// deviceToken is required.
serviceParams.put("deviceToken", "U0******************");
executeRequestRequest.setServiceParameters(JSONObject.toJSONString(serviceParams));
executeRequestRequest.setAcceptFormat(FormatType.JSON);

try {
    ExecuteRequestSGResponse httpResponse = client.getAcsResponse(executeRequestRequest);
    System.out.println("httpResponse:" + JSONObject.toJSONString(httpResponse));
} catch (Exception e) {
    e.printStackTrace();
}

Vérifier le résultat de l'appel

Après avoir envoyé une requête via le SDK, vérifiez l'intégration en contrôlant les points suivants :

  • Une réponse avec Code=200 indique que la requête a réussi.

  • L'objet Data contient le champ tags, ce qui confirme que le résultat de la détection des risques liés à l'appareil est renvoyé.

Régions prises en charge

Le paramètre REGION-ID doit correspondre au domaine de rapport du SDK de risque lié aux appareils. ap-southeast-1 est recommandé.

Région

Description

ap-southeast-1

Singapour. Recommandé.

cn-hongkong

Chine (Hong Kong)

us-west-1

États-Unis (Silicon Valley)

eu-central-1

Allemagne (Francfort)

FAQ

Pour les questions courantes concernant l'intégration du service de risque lié aux appareils, reportez-vous à FAQ sur l'intégration du SDK de détection de fraude sur appareil.