Remarque
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.
Microsoft Dataverse fournit plusieurs façons d’intégrer n’importe quel type d’application (mobile, web, bureau), appareil, système ou service. Pour les solutions cloud, il existe des façons d’intégrer quel que soit le modèle dans lequel votre solution est déployée , infrastructure as a service (IaaS), platform as a service (PaaS) ou software as a service (SaaS). Pour les solutions IaaS, l’approche d’intégration fonctionne également bien si les solutions s’exécutent à l’intérieur des conteneurs.
Dans certains cas, l’intégration à une application peut être obtenue à l’aide de la logique métier contenue dans Dataverse. Dans d’autres cas, il implique l’intégration via des événements, l’API OData Dataverse ou l’utilisation de plug-ins.
Définition de la logique métier
Les tables dans Dataverse peuvent utiliser une logique côté serveur enrichie et une validation pour garantir la qualité des données et réduire le code répétitif dans chaque application qui crée et utilise des données dans une table.
Règles métier : validez les données sur plusieurs colonnes et tables, et fournissez des messages d’avertissement et d’erreur, quelle que soit l’application utilisée pour créer les données. Pour plus d'informations : Créer une règle métier pour une table
Flux de processus métier : guidez les utilisateurs pour s’assurer qu’ils entrent des données de manière cohérente et suivez les mêmes étapes à chaque fois. Les flux de processus métier ne sont actuellement pris en charge que pour les applications basées sur des modèles. Plus d’informations : Vue d’ensemble des flux de processus métier
Flux de travail : Automatisez les processus métier sans interaction utilisateur. Plus d’informations : flux de travail Dataverse classiques
Logique métier avec du code : prend en charge les scénarios de développement avancés pour étendre l’application directement via du code. Plus d’informations : Appliquer une logique métier à l’aide du code
Intégration à des applications à l’aide d’événements
Une approche courante de l’intégration d’applications consiste à utiliser des événements. Par exemple, un événement tel que l’ajout d’une nouvelle ligne se produit dans Dataverse et il doit être communiqué à un système associé afin qu’une action puisse être effectuée. Par exemple, si une nouvelle demande de support a été déclenchée, il peut déclencher un sms à envoyer au personnel de support affecté.
Cette interactivité peut également se produire dans la direction opposée : une mise à jour dans un système externe peut entraîner l’ajout, la mise à jour ou la suppression de données dans un environnement Power Platform.
Les approches les plus populaires dans Dataverse impliquent des webhooks, une messagerie Azure (Service Bus, Event Hubs), Azure Logic Apps ou Power Automate.
Webhooks
Avec Dataverse, vous pouvez envoyer des données sur les événements qui se produisent sur le service à une application web à l’aide de webhooks. Un webhook est un modèle HTTP léger pour connecter des API et des services web avec un modèle de publication et d’abonnement. Les expéditeurs de webhooks avertissent les destinataires à propos d’événements en adressant aux points de terminaison du destinataire des demandes comportant certaines informations sur les événements.
Les webhooks permettent aux développeurs et aux éditeurs de logiciels indépendants d’intégrer des données Dataverse à leur propre code personnalisé hébergé sur des services externes. Grâce au modèle webhooks, vous pouvez sécuriser votre point de terminaison à l’aide d’un en-tête d’authentification ou de clés de paramètre de chaîne de requête. Cela est plus simple que le modèle d’authentification de signature d’accès partagé utilisé avec l’intégration d’Azure Service Bus.
Les webhooks ne peuvent évoluer que jusqu’au point auquel votre service Web hébergé peut gérer les messages.
Les webhooks activent des étapes synchrones et asynchrones.
Les webhooks envoient des requêtes POST avec la charge utile JSON et peuvent être consommés par n’importe quel langage de programmation ou application web hébergé n’importe où.
Les webhooks peuvent être appelés à partir d’une activité de plug-in ou de flux de travail personnalisé.
Azure Service Bus (Bus de service Azure)
Service Bus fournit un canal de communication sécurisé et fiable entre les données du runtime Dataverse et les applications métier basées sur le cloud. Cette fonction est particulièrement utile, car elle maintient les systèmes Dataverse ou autres serveurs Dataverse séparés synchronisés avec les modifications de données métier .
La séquence d’événements est la suivante :
Une application d’écoute est enregistrée sur un point de terminaison de la solution Azure Service Bus et commence à écouter activement le contexte d’exécution distant Dataverse sur le bus de services.
Un utilisateur effectue une opération dans Dataverse qui déclenche l’exécution du plug-in enregistré intégré ou d’un plug-in personnalisé compatible avec Azure. Le plug-in lance une publication, via une tâche système de service asynchrone, du contexte de données de requête actuel sur Service Bus.
Les revendications publiées par Dataverse sont authentifiées. Service Bus transmet ensuite le contexte d’exécution à distance à l’écouteur. L'écouteur traite les informations de contexte et effectue une tâche professionnelle avec ces informations. Service Bus notifie le service asynchrone d'une publication réussie et attribue à la tâche système le statut Terminé.
Service Bus relaye le contexte des données de message de requête entre Dataverse et les applications d'écoute de la solution Service Bus. Service Bus assure également la sécurité des données afin que seules les applications autorisées puissent accéder aux données Dynamics 365 publiées. L'autorisation de Dataverse pour publier le contexte de données dans le Service Bus et permettre aux applications écouteuses de le lire est gérée par les signatures d'accès partagé Azure.
Plus d'informations : Service Bus et Authentification et autorisation Service Bus
Logic Apps et Power Automate
Logic Apps, proposé via Azure et Power Automate, proposé via Microsoft Power Platform, peut déclencher un flux de travail qui peut être utilisé pour s’intégrer aux événements et données d’application selon une planification ou par activité dans une base de données, un système, un service ou SaaS.
Ces flux de travail peuvent exécuter une logique et interagir avec ces systèmes à l’aide des centaines de connecteurs aux bases de données, PaaS et SaaS.
Par exemple, lorsqu’une ligne est ajoutée à une base de données relationnelle, telle que SQL, cela peut déclencher un flux de travail qui peut insérer ces données dans Dataverse.
Avec la possibilité de créer des connecteurs personnalisés à l’aide de définitions Open API (anciennement Swagger) pour un service, il est également simple d’inclure des services, des fonctions et du code s’exécutant dans IaaS et Azure Kubernetes Service (AKS).
Intégration de Dataverse dans des applications à l’API OData
Tous les langages de programmation populaires prennent en charge une forme d’intégration avec les API REST.
L'API Web Dataverse fournit une expérience de développement pouvant être utilisée avec une grande variété de langues, de plateformes et d'appareils. L’API web implémente les API OData (Open Data Protocol), version 4.0, une norme OASIS pour créer et consommer des API RESTful sur des sources de données enrichies. Vous pouvez en savoir plus sur ce protocole à www.odata.org. Pour plus d’informations sur cette norme, consultez www.oasis-open.org.
Dataverse adopte une approche « API first ». Cela signifie que le service ne fournit pas seulement un mécanisme d’interrogation des données, il fournit également des métadonnées du service sur les règles d’entreprise, les contraintes, et ainsi de suite, que vous pouvez utiliser pour créer des applications et des services intelligents, réactifs.
L’API est sécurisée à l’aide d’OAuth. OAuth nécessite un idtable fournisseur pour l’authentification. Pour Dataverse, le idtable fournisseur est Microsoft Entra ID. Pour vous authentifier auprès de Microsoft Entra à l’aide d’un compte professionnel ou scolaire Microsoft, utilisez les bibliothèques d’authentification Microsoft (MSAL).
Pour plus d’informations sur la prise en main de l’API Web Dataverse, consultez Utiliser l’API Web Dataverse.
Pour plus d’informations sur l’utilisation de l’API web Dataverse avec OAuth, consultez Utiliser OAuth avec Dataverse.
Plug-ins
Dataverse permet d’écrire du code qui se trouve entre l’API et les données. Ce code, écrit dans .NET, est appelé plug-in. Étant donné que le plug-in se trouve entre l’API et les données, il applique la même logique à chaque application.
Les plug-ins peuvent être synchrones ou asynchrones et effectuer les tâches suivantes :
Retourne les erreurs à l’utilisateur.
Interrogez les données Dataverse pour évaluer la logique à exécuter.
Effectuez des opérations de données.
Effectuez des requêtes HTTP sortantes.
Les plug-ins sont enregistrés aux points du pipeline d'événements, qui sont illustrés ici.
Dans le pipeline d’événements, les événements suivants peuvent se produire :
Les demandes et réponses peuvent être examinées et rejetées ou manipulées dans plusieurs étapes du pipeline d’événements.
Les gestionnaires de validation peuvent lever des exceptions personnalisées pour rejeter les opérations que votre logique considère comme non valides.
Les gestionnaires de pré-opération peuvent modifier les demandes avant l’opération de base de données.
Les gestionnaires post-opération peuvent modifier les réponses.
Les gestionnaires asynchrones effectuent une automatisation une fois la réponse retournée.
Une contrainte avec les plug-ins est qu’ils doivent être autonomes. Si le code d’intégration nécessite des références à d’autres bibliothèques, l’intégration peut être effectuée à l’aide d’Azure Functions.
Azure Functions
Azure Functions fournit une option d'exécution de code sans serveur pour la logique métier et d’intégration.
Les fonctions sont déclenchées par un appel à partir d’un système externe, d’un service ou d’un code. Pour Dataverse, ce déclencheur peut provenir directement de Dataverse à l’aide de Service Bus, d’un webhook ou d’un appel à partir d’un plug-in. En outre, l’appel Azure Functions peut être lancé via un flux dans Logic Apps ou Power Automate qui implique le connecteur Dataverse.
Plus d’informations : Utiliser des plug-ins pour étendre les processus métier