Configuration web de l’empreinte digitale de l’appareil
La configuration de la prise d’empreinte numérique des appareils est effectuée en deux phases.
- Configurez le certificat SSL (Secure Sockets Layer) du serveur de noms de domaine (DNS) et chargez-le sur le portail Fraud Protection.
- Implémenter l’empreinte digitale de l’appareil.
Cette section fournit des instructions détaillées pour ces deux phases. La première phase ne doit être effectuée qu’une seule fois. Toutefois, la deuxième phase doit être répétée une fois pour chaque site web ou application mobile où l’empreinte digitale de l’appareil est implémentée.
Configurer DNS et générer un certificat SSL
Effectuez les procédures suivantes pour configurer DNS et générer un certificat SSL. La configuration DNS et SSL, tout en étant facultative, est fortement recommandée pour garantir une couverture et des performances optimales d’empreinte digitale. La configuration DNS et SSL permet au script d’empreinte digitale d’être considéré comme une intégration tierce, et non un cookie tiers.
Configurer le DNS
Pour configurer DNS, procédez comme suit.
- Sélectionnez un sous-domaine sous votre domaine racine, par exemple
fpt.contoso.com
. Tout préfixe peut être utilisé. - Pour le sous-domaine sélectionné, créer un nom canonique (CNAME) qui indique
fpt.dfp.microsoft.com
.
Générer et charger un certificat SSL
Pour générer et charger un certificat SSL, procédez comme suit.
- Pour l’intégration principale, générer le certificat SSL pour le sous-domaine sélectionné. Vous pouvez créer un certificat SSL et ajouter tous les sous-domaines dans le champ Autre nom de l’objet du certificat.
- Accédez au portail Fraud Protection, puis, dans le volet de navigation de gauche, sélectionnez Intégration.
- Sur la page Intégration, sélectionnez Modifier, puis, sur la page suivante, sélectionnez Suivant pour ouvrir la page Charger le certificat SSL.
- Sélectionnez Sélectionner un certificat, puis chargez le certificat SSL que vous avez généré. Si votre certificat a un mot de passe, entrez-le dans la zone de texte. Sélectionnez Charger.
Valider le certificat SSL
Il existe deux façons de vérifier que le certificat SSL est correctement déployé.
- Accédez à « https:///health/ping » et vérifiez la validité du certificat.
OR
- Allez à "https://www.sslshopper.com/ssl-checker.html" ;. Entrez le nom d’hôte du serveur, sélectionnez Vérifier SSL et passez en revue les informations de certificat SSL affichées sur la page.
Remarque
Seuls les fichiers .pfx sont pris en charge. La propagation du certificat aux serveurs de prise d’empreinte numérique des appareils peut prendre quelques minutes.
Mise en œuvre de la prise d’empreinte numérique des appareils
Votre site Web ou votre application doit lancer les demandes de prise d’empreinte numérique des appareils quelques secondes avant qu’une transaction ne soit envoyée à Fraud Protection pour l’évaluation des risques (telle qu’une transaction pour ajouter un instrument de paiement, se connecter ou payer). Cette exigence garantit que la protection contre les fraudes reçoit toutes les données dont elle a besoin pour effectuer une évaluation précise. Cette section fournit des instructions détaillées pour l’implémentation de la prise d’empreinte numérique des appareils sur les sites Web et les applications mobiles.
Pour implémenter la prise d’empreinte numérique des appareils, procédez comme suit.
Modifiez le code de script JavaScript suivant et insérez-le sur la page Web ou dans l’application où vous souhaitez collecter les informations de prise d’empreinte numérique des appareils.
<script src="https://<Your_Sub_Domain>/mdt.js?session_id=<session_id>&instanceId=<instance_id>" type="text/javascript"></script>
- Your_Sub_Domain – Le sous-domaine sous votre domaine racine.
- sessionid : l’identifiant de session unique de l’appareil créé par le client. Il peut comporter jusqu’à 128 caractères et n’accepte que les caractères suivants : majuscules et minuscules, caractères Roman, chiffres, caractères de soulignement et traits d’union (a–z, A–Z, 0–9, _, -). L’ID de session doit contenir au moins 16 octets de données générées de manière aléatoire. Lors de l’utilisation d’un codage hexadécimal, cela se traduit par 32 caractères hexadécimaux. Bien que Microsoft vous recommande d’utiliser un identificateur global unique (GUID) pour l’ID de session, il n’est pas nécessaire.
- instance_id : valeur requise pour intégrer votre site web à l’empreinte digitale de l’appareil. Utilisez la valeur ID de prise d’empreinte numérique des appareils indiquée sur la vignette Environnement actuel sur la page Intégration de l’environnement correspondant dans le portail Fraud Protection.
Exemple
<script src="https://fpt.contoso.com/mdt.js?session_id=211d403b-2e65-480c-a231-fd1626c2560e&instanceId=b472dbc3-0928-4577-a589-b80090117691" type="text/javascript"></script>
Voici un exemple de réponse pour mdt.js.
window.dfp={url:"https://fpt.contoso.com/?session_id=211d403b-2e65-480c-a231-fd1626c2560e&CustomerId=b472dbc3-0928-4577-a589-b80090117691",sessionId:"211d403b-2e65-480c-a231-fd1626c2560e",customerId:"b472dbc3-0928-4577-a589-b80090117691",dc:"uswest"};window.dfp.doFpt=function(doc){var frm,src;true&&(frm=doc.createElement("IFRAME"),frm.id="fpt_frame",frm.style.width="1px",frm.style.height="1px",frm.style.position="absolute",frm.style.visibility="hidden",frm.style.left="10px",frm.style.bottom="0px",frm.setAttribute("style","color:#000000;float:left;visibility:hidden;position:absolute;top:-100;left:-200;border:0px"),src="https://Your_Sub_Domain/?session_id=211d403b-2e65-480c-a231-fd1626c2560e&CustomerId=b472dbc3-0928-4577-a589-b80090117691",frm.setAttribute("src",src),doc.body.appendChild(frm))};
Chargez la prise d’empreinte numérique des appareils après que les éléments de la page sont chargés.
window.dfp.doFpt(this.document);
Lorsque vous soumettez des transactions dans l’API Fraud Protection, définissez un ID de session dans le champ deviceContextId. Pour les évaluations, définissez un ID de session dans le champ deviceFingerprinting.id.
Définissez le champ device.ipAddress sur l’adresse IP du client que votre site Web reçoit lorsqu’un client utilise votre site. Pour les évaluations, définissez l’adresse IP du client dans le champ deviceFingerprinting.ipAddress. Ce champ est facultatif et n’a pas besoin d’être défini si vous ne l’avez pas.
Activer l’intégration côté client pour l’empreinte digitale des appareils
Pour certains scénarios d’empreintes digitales web, Fraud Protection prend en charge une classe spécialisée d’intégration appelée intégration côté client. L’intégration côté client diffère des pratiques d’intégration standard, car la réponse d’empreinte digitale est retournée directement au client en tant que charge utile chiffrée, en ignorant l’appel d’évaluation de serveur à serveur.
L’intégration côté client est utile pour les scénarios à faible latence où ignorer l’appel serveur à serveur est avantageux. Pour déterminer si l’intégration côté client est adaptée ou non à votre scénario, consultez le guide de question suivant.
Mon scénario d’empreinte digitale de l’appareil est-il uniquement ?
Si votre scénario n’est pas uniquement l’empreinte digitale de l’appareil, l’intégration côté client n’est pas adaptée à votre scénario.
Voulez-vous que mes données d’empreinte digitale se trouvent dans le navigateur par opposition à mon serveur qui l’extrait ?
Dans l’intégration de serveur à serveur classique, une fois la collecte d’attributs terminée sur le site web, les données sont envoyées aux serveurs de la protection contre les fraudes, où vous pouvez obtenir la réponse d’évaluation sur votre serveur en effectuant l’appel d’API d’évaluation standard. Toutefois, lors de l’intégration côté client, lorsque les données de collecte d’attributs sont envoyées aux serveurs de Fraud Protection, la réponse d’évaluation revient et est retournée directement dans le navigateur. De cette façon, votre serveur peut extraire la réponse d’évaluation du navigateur lui-même au lieu d’effectuer l’appel de serveur à serveur, ce qui permet d’économiser du temps. N’oubliez pas que l’empreinte digitale elle-même prend quelques secondes, de sorte que la réponse d’évaluation est uniquement présente dans le navigateur si l’utilisateur se trouve sur la page pendant quelques secondes. Si votre scénario tire parti des données déjà présentes dans le navigateur, l’intégration côté client peut vous convenir.
En général, la plupart des scénarios d’empreinte digitale sont résolus par l’intégration de serveur à serveur standard, et l’intégration côté client est bénéfique pour quelques scénarios spécifiques où la latence diminue est critique. Étant donné que l’intégration côté client est une classe spécialisée d’intégration simplifiée et sécurisée, les conditions préalables suivantes doivent être remplies pour l’activer.
- Vous devez être dans un environnement racine d’un locataire Fraud Protection.
- Vous devez configurer un appel externe qui retourne une réponse de clé de chiffrement au format JWKS (Json Web Key Sets). Cet appel externe retourne la clé utilisée par Fraud Protection pour chiffrer la charge utile. Vous pouvez utiliser cette clé par la suite pour déchiffrer le côté serveur de réponse de la protection contre les fraudes que vous recevez initialement côté client. Vous êtes responsable de la fourniture de la clé pour le chiffrement et le déchiffrement. Pour plus d’informations sur la configuration des appels externes, consultez Appels externes.
Le code suivant montre un exemple de format JWKS.
{
"keys":
[
{
"kty":null,
"use":null,
"kid":null,
"k":null
}
]
}
- Vous devez utiliser uniquement les sections métadonnées et empreintes digitales de l’appareil du modèle d’évaluation des empreintes digitales de l’appareil. S’il existe des sections de schéma supplémentaires ou si vous n’utilisez pas le modèle d’évaluation des empreintes digitales de l’appareil, l’option d’intégration côté client n’est pas disponible pour vous.
Lorsque vous atteignez la page Paramètres de l’Assistant Évaluation d’un modèle d’empreinte digitale d’appareil, l’option d’intégration côté client est disponible pour vous. Après avoir choisi d’activer l’intégration côté client, vous sélectionnez l’appel externe au format de réponse JWKS que vous avez configuré.
Pour terminer la configuration de l’intégration côté client, pour retourner la réponse chiffrée dans le navigateur, vous devez utiliser une version modifiée de l’exemple JavaScript suivant.
<script src="https://<Your_Sub_Domain>/mdt.js?session_id=<session_id>&customerId=<customer_id>&assessment=<assessment>&requestId=<request_id>" type="text/javascript"></script>
- Your_Sub_Domain – Le sous-domaine sous votre domaine racine.
- sessionid : l’identifiant de session unique de l’appareil créé par le client. Il peut contenir jusqu’à 128 caractères et ne peut contenir que les caractères suivants : lettres romaines majuscules et minuscules, chiffres, caractères de soulignement et traits d’union (a-z, A-Z, 0-9, _, -). L’ID de session doit contenir au moins 16 octets de données générées de manière aléatoire. Lors de l’utilisation d’un codage hexadécimal, cela se traduit par 32 caractères hexadécimaux. Bien que Microsoft vous recommande d’utiliser un identificateur global unique (GUID) pour l’ID de session, il n’est pas nécessaire.
- customer_id : valeur requise pour intégrer votre site web à l’empreinte digitale de l’appareil. Utilisez la valeur d’ID d’environnement répertoriée dans la vignette Environnement actuel de la page Intégration de l’environnement correspondant dans le portail Fraud Protection. Vous devez être dans un environnement racine pour que l’intégration côté client fonctionne.
- évaluation : nom de l’API de l’évaluation de l’empreinte digitale de l’appareil configurée avec l’intégration côté client activée. Le nom de l’API respecte la casse et est extrait de la page de configuration de l’évaluation.
- request_id : identificateur unique pour la requête elle-même, distinct de l’ID de session. Cet identificateur doit être un GUID d’au moins 32 caractères de longueur.
L’exemple suivant montre le code JavaScript avec des exemples de valeurs.
<script src="https://fpt.contoso.com/mdt.js?session_id=2b2a1f5e-afa7-4c6d-a905-ebf66eaedc83&customerId=b3f6d54b-961c-4193-95ee-b6b204c7fd23&assessment=CSI&requestId=b12e86a0-37b1-43a2-958b-3f04fe7cef6c" type="text/javascript"></script>
Une fois que ce script est configuré et que l’intégration côté client est activée, la réponse d’empreinte digitale est retournée en tant que charge utile chiffrée dans le navigateur du client. Vous pouvez utiliser une fonction de rappel pour récupérer la charge utile de réponse chiffrée. L’exemple ci-dessous montre la fonction de rappel en cours d’utilisation :
window.dfp.doFpt(document, function (response) {
if(response == null || response.startsWith('ServerError'))
console.log("Error Scenario");
else
console.log("Success Scenario"); // pass to server so it can decrypt and use response
});
Vous devez toujours transmettre la charge utile à votre serveur pour le déchiffrer et utiliser la réponse. Nous ne vous attendons pas à appeler l’appel externe pour obtenir la clé de chiffrement que vous hébergez pour déchiffrer la charge utile. Vous devez stocker et accéder à la clé de la même façon sécurisée que vous obtenez et gérez d’autres secrets utilisés sur votre serveur.
Ressources supplémentaires
- Vue d’ensemble de l’empreinte digitale des appareils
- Attributs dans l’empreinte digitale de l’appareil
- Configurer et implémenter l’empreinte digitale de l’appareil
- Formation : Implémenter l’empreinte digitale des appareils dans Dynamics 365 Protection contre les fraudes.