Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Depuis le 3 février 2025, Dynamics 365 Fraud Protection n’est plus disponible pour l’achat. La prise en charge de la protection contre les fraudes prendra fin le 3 février 2026. Pour plus d’informations, consultez l’article Fin de prise en charge de Dynamics 365 Fraud Protection.
Cet article explique comment intégrer des interfaces de programmation d’applications en temps réel dans Microsoft Dynamics 365 Fraud Protection.
Pour tirer parti de la suite complète de fonctionnalités de protection contre les fraudes, vous devez envoyer vos données de transaction aux API de protection contre les fraudes en temps réel. Dans l’expérience d’évaluation, l’envoi de vos données de transaction vous permet d’analyser les résultats de l’utilisation de la protection contre les fraudes. Dans l’expérience de protection, vous pouvez également respecter les décisions en fonction des règles que vous avez configurées.
Selon la façon dont vous utilisez la protection contre les fraudes, vous pouvez utiliser différents ensembles d’API de protection d’achat suivantes :
- Achats
- Statut d'achat
- Événement Bancaire
- Rétrofacturation
- Remboursement
- Mise à jour du compte
- Étiquette
Phases d’intégration d’API
L’intégration des API de protection d’achat se produit en trois phases :
- Créez des applications Microsoft Entra par le biais de la protection contre les fraudes.
- Générez un jeton d’accès.
- Appelez les API.
Connectez-vous
Important
Vous devez être administrateur général dans votre locataire Azure pour terminer la connexion initiale.
Visitez les portails suivants pour chaque environnement que vous envisagez d’utiliser. Connectez-vous et acceptez les conditions générales si vous y êtes invité.
- Environnement de bac à sable
- Environnement de production (Vous avez peut-être déjà effectué cette étape de production lors de l’inscription initiale.)
Créer des applications Microsoft Entra
Important
Vous devez être administrateur d’application, administrateur d’application cloud ou administrateur général dans votre locataire Azure pour effectuer cette étape.
Pour acquérir les jetons requis pour appeler les API, vous devez configurer et utiliser les applications Microsoft Entra, comme décrit dans cette section.
Configurer des applications Microsoft Entra
Pour configurer des applications Microsoft Entra, procédez comme suit.
Dans le portail Fraud Protection, dans le volet de navigation gauche, sélectionnez Integration > Create Microsoft Entra Application > Setup now.
Terminez la page pour créer votre application. Nous vous recommandons de créer une application Microsoft Entra pour chaque environnement que vous souhaitez intégrer à Fraud Protection.
Entrez ou sélectionnez des valeurs pour les champs obligatoires suivants :
- Nom complet de l’application : donnez un nom descriptif à votre application. La longueur maximale est de 93 caractères.
- Méthode d’authentification : indiquez si vous souhaitez vous authentifier via un certificat ou un secret (mot de passe).
Si vous avez sélectionné la méthode d’authentification par certificat, procédez comme suit :
- Sélectionnez Choisir un fichier pour charger la clé publique. (La clé privée correspondante est requise lorsque vous achetez des jetons.)
- Sélectionnez Secret pour générer automatiquement un mot de passe après la création de l’application.
Une fois que vous avez terminé de définir les champs requis, sélectionnez Créer une application. La page de confirmation récapitule le nom, l’ID et l’empreinte numérique ou le secret de votre application, selon la méthode d’authentification que vous avez sélectionnée.
Important
Enregistrez vos informations d’empreinte secrète ou de certificat pour référence ultérieure. Le secret ne s’affiche qu’une seule fois.
Créer une autre application
Pour créer une autre application, sélectionnez Créer une autre application. Vous pouvez créer autant d’applications que nécessaire pour exécuter des appels d’API dans chacun de vos environnements.
Gérer les applications Microsoft Entra existantes
Après avoir créé vos applications Microsoft Entra, vous pouvez les gérer via le [portail Azure](https://portal.azure.com/#blade/Microsoft_Microsoft Entra ID_IAM/ActiveDirectoryMenuBlade/RegisteredApps). Pour plus d’informations, consultez Comment et pourquoi les applications sont ajoutées à Microsoft Entra ID.
Générer un jeton d’accès
Pour intégrer en toute sécurité vos systèmes à Fraud Protection, obtenez un jeton Microsoft Entra et fournissez-le dans l’en-tête de chaque appel d’API.
Remarque
Les jetons d’accès ont une durée de vie limitée de 60 minutes. Nous vous recommandons de mettre en cache et de réutiliser un jeton jusqu’à ce qu’il soit proche de l’expiration. Vous pouvez ensuite obtenir un nouveau jeton d’accès.
Les informations suivantes sont nécessaires pour obtenir un jeton.
ID et informations requis
- URI d’environnement : les URI de votre environnement de bac à sable ou de production s’affichent sous l’onglet Configuration de la page Gestion des API dans le portail Fraud Protection.
- ID d’annuaire (locataire) : cet ID est l’identificateur global unique (GUID) du domaine d’un locataire dans Azure. Il apparaît dans le portail Azure et sous l’onglet Configuration de la page Gestion des API dans le portail Fraude Protection.
- ID d’application (client) : cet ID identifie l’application Microsoft Entra que vous avez créée pour appeler des API. Obtenez l’ID à partir de la page de confirmation des API en temps réel ou recherchez-le ultérieurement sous Inscriptions d’applications dans le portail Azure. Il y aura un ID pour chaque application que vous avez créée.
- Empreinte numérique ou secret du certificat : obtenez l’empreinte numérique ou le secret à partir de la page de confirmation des API en temps réel.
- ID d’instance : cet ID est le GUID de votre environnement dans La protection contre les fraudes. Il apparaît dans la vignette Intégration dans le tableau de bord Protection contre les fraudes.
Exemples de code qui montrent comment acquérir un jeton à l’aide de votre certificat ou de votre secret
Les exemples de code C# suivants fournissent des exemples d’acquisition d’un jeton avec votre certificat ou votre secret. Remplacez les espaces réservés par vos informations spécifiques. Pour les deux exemples C#, vous devez importer le package NuGet Microsoft.Identity.Client.
Pour obtenir des exemples dans d’autres langues, consultez https://aka.ms/aaddev.
Obtenir un jeton d’accès à l’aide d’un ID d’application et d’une clé de certificat privé
/// <summary>
/// Gets an access token using an app ID and private certificate key.
/// </summary>
/// <param name="tenantId">Directory (tenant) ID, in GUID format</param>
/// <param name="clientId">Application (client) ID</param>
/// <param name="certPath">File path to the certificate file (pfx) used to authenticate your application to Microsoft Entra ID</param>
/// <param name="certPassword">Password to access to the certificate file's private key</param>
public async Task<string> AcquireTokenWithCertificate(string tenantId, string clientId, string certPath, string certPassword)
{
var certificate = new X509Certificate2(certPath, certPassword);
var app = ConfidentialClientApplicationBuilder.Create(clientId)
.WithAuthority(AzureCloudInstance.AzurePublic, tenantId)
.WithCertificate(certificate)
.Build();
var scopes = new string[] { "<API endpoint for INT or PROD>; should be https://api.dfp.microsoft-int.com/.default or https://api.dfp.microsoft.com/.default" };
try
{
var result = await app.AcquireTokenForClient(scopes).ExecuteAsync();
return result.AccessToken;
}
catch (MsalServiceException ex)
{
//Handle authentication exceptions
throw ex;
}
}
Obtenir un jeton d’accès à l’aide d’un ID d’application et d’un secret
/// <summary>
/// Gets an access token using an app ID and secret.
/// </summary>
/// <param name="tenantId">Directory (tenant) ID, in GUID format</param>
/// <param name="clientId">Application (client) ID</param>
/// <param name="clientSecret">The secret (password) used to authenticate the client (application) ID</param>
public async Task<string> AcquireTokenWithSecret(string tenantId, string clientId, string clientSecret)
{
var app = ConfidentialClientApplicationBuilder.Create(clientId)
.WithAuthority(AzureCloudInstance.AzurePublic, tenantId)
.WithClientSecret(clientSecret)
.Build();
var scopes = new string[] { "<API endpoint for INT or PROD>; should be https://api.dfp.microsoft-int.com/.default or https://api.dfp.microsoft.com/.default" };
try
{
var result = await app.AcquireTokenForClient(scopes).ExecuteAsync();
return result.AccessToken;
}
catch (MsalServiceException ex)
{
//Handle authentication exceptions
throw ex;
}
}
L’objet AuthenticationResult dans chaque cas contient la valeur AccessToken et une propriété ExpiresOn qui indique quand le jeton devient non valide.
Demande POST à :
https://login.microsoftonline.com/<Microsoft Entra tenant ID>/oauth2/token
Headers :
- Content-type : application/x-www-form-urlencoded
Corps (clé-valeur) :
- grant_type : client_credentials
- client_id : {Votre ID client de l’étape précédente}
- client_secret : {Votre secret de l’étape précédente}
- ressource :
https://api.dfp.microsoft.com
(pour int,https://api.dfp.microsoft-int.com
)
Réponse :
- Utilisez la valeur de access_token de la réponse pour l’étape suivante.
Pour plus d’informations, consultez la documentation Azure suivante :
- Vue d’ensemble de la bibliothèque d’authentification Microsoft (MSAL)
- Acquérir et mettre en cache des jetons à l’aide de la bibliothèque d’authentification Microsoft (MSAL)
Appeler les API
Pour appeler les API, procédez comme suit.
Transmettez les en-têtes HTTP requis suivants sur chaque requête.
Nom de l’en-tête Valeur de l’en-tête Autorisation Utilisez le format suivant pour cet en-tête. (Remplacez accesstoken par la valeur de jeton réelle retournée par l’ID Microsoft Entra.)
Porteur accesstoken
x-ms-correlation-id Envoyez une nouvelle valeur GUID sur chaque ensemble d’appels d’API effectués ensemble. x-ms-dfpenvid Envoyez la valeur GUID de votre ID d’instance. Générez une charge utile basée sur les événements. Renseignez les données d’événement avec les informations pertinentes de votre système. Pour obtenir de la documentation sur tous les événements pris en charge, consultez l’API Dynamics 365 Fraud Protection.
Combinez l’en-tête (qui inclut le jeton d’accès) et la charge utile, puis envoyez-les à votre point de terminaison Fraud Protection.
Demande POST à :
<Base URL>/v1.0/merchantservices/events/purchase
Headers :
- x-ms-correlation-id: {Un GUID, qui doit être unique par requête}
- content-type : application/json
- Autorisation : {Jeton de l’étape précédente}
- x-ms-dfpenvid : {ID d’environnement de l’environnement cible}
Corps :
- Obtenez l'exemple de corps de requête pour la protection d'un compte depuis la page Swagger partagée.
Remarque
Si vous créez un environnement, incluez l’ID d’environnement dans l’en-tête d’API pendant l’intégration, afin que les transactions puissent être correctement routées.
Les options suivantes sont acceptables pour x-ms-dfpenvid dans l’appel d’API et le comportement est identique.
- Utilisez l'ID d'environnement pour l'environnement que vous appelez. L’ID est répertorié dans la page Intégration dans le champ ID d’environnement .
- Utilisez le chemin complet de l’ID d’API client de la racine jusqu’à l’environnement enfant que vous appelez, en utilisant la barre oblique (/) comme séparateur. Par exemple, /primary/XYZ.
- Utilisez le chemin complet de l’ID d’environnement ou de l’ID d’API client de la racine vers l’environnement enfant que vous appelez à l’aide de la barre oblique (/) comme séparateur. Par exemple, 7b925ca8-d372-4245-bc5a-94b5fdb6c067/XYZ.
Pour spécifier l’ID d’API client lorsque vous créez un environnement, consultez l’article Gérer les environnements.
Meilleures pratiques
- Chaque jeton Microsoft Entra reste valide pendant 60 minutes. Nous vous recommandons de la mettre en cache pendant une durée plus courte et de la réutiliser.
- Assurez-vous que votre HttpClient maintient des connexions persistantes.
- Passez toujours l’en-tête x-ms-dfpenvid et assurez-vous qu'il pointe vers l'environnement du marchand pour lequel vous souhaitez envoyer des transactions.
- Stockez le secret dans un magasin de secrets.
- Transmettez toujours l’en-tête x-ms-correlation-id lors des sessions de débogage futures avec Fraud Protection.
- Vérifiez que l’en-tête x-ms-correlation-id est unique pour chaque transaction envoyée à Fraud Protection.
Afficher l’exemple d’application
Pour obtenir des informations de référence supplémentaires, vous pouvez consulter l’exemple d’application marchande et la documentation du développeur associée. L'application exemple illustre comment appeler les API de protection contre la fraude, y compris les événements API tels que l'envoi de mises à jour de compte client, de remboursements et de rétrofacturations en temps réel. La documentation de l’exemple d’application est liée à un exemple de code réel chaque fois que ces liens sont possibles. Sinon, des exemples de code existent directement dans la documentation.
Pour obtenir des conseils sur la configuration de l’exemple de site pour votre utilisation, consultez Configurer l’exemple de site.