Intégration Azure avec Microsoft Dynamics CRM.

 

Date de publication : novembre 2016

S’applique à : Dynamics CRM 2015

Vous pouvez connecter Mise à jour de Microsoft Dynamics CRM 2015 et de Microsoft Dynamics CRM Online 2015 à la plateforme Microsoft Azure en couplant le pipeline d’exécution d'événement Dynamics 365 au Microsoft Azure Service Bus. Cette connexion permet aux données traitées dans le cadre de l'opération Dynamics 365 actuelle d'être publiées sur le bus. Les solutions Microsoft Azure Service Bus qui sont « compatibles Dynamics 365 » peuvent écouter et lire les données publiées sur le bus des services par Microsoft Dynamics 365. Les données publiées sont stockées dans une instance de classe RemoteExecutionContext qui est une version étendue de IExecutionContext passée au moment de l’exécution aux plug-ins asynchrones Microsoft Dynamics 365.

Cette connexion entre Microsoft Dynamics 365 et la plateforme Microsoft Azure fournit un canal sécurisé pour la communication des données d'exécution Dynamics 365 aux applications métier externes basées sur le cloud.

Contenu de la rubrique

Éléments clés de la connexion

Scénario CRM vers le bus des services

Création d’un contrat entre CRM et une solution Azure

Gestion des erreurs d'exécution

Éléments clés de la connexion

Les éléments clés implémentant la connexion entre Microsoft Dynamics 365 et le Microsoft Azure Service Bus sont les suivants :

  • Service asynchrone
    Le service asynchrone est responsable de la publication du contexte d’exécution distant Microsoft Dynamics 365 sur le Microsoft Azure Service Bus. Chaque publication est effectuée par une tâche système du service asynchrone. Un utilisateur peut afficher le statut de chaque tâche système à l’aide de l’application Web Microsoft Dynamics 365.

  • Plug-ins
    Il existe deux types de plug-ins inscrits de manière asynchrone pris en charge par la fonctionnalité de connexion : les plug-ins prêts à l'emploi, fournis avec Dynamics 365, et les plug-ins personnalisés. Pour plus d’informations sur l’utilisation des plug-ins asynchrones avec Microsoft Azure, voir Accéder au service de notification

    Un plug-in compatible Azure est fourni avec Dynamics 365. Ce plug-in s’exécute en toute confiance avec la plateforme Microsoft Dynamics 365. Une fois inscrit dans Microsoft Dynamics 365, le plug-in peut indiquer au service asynchrone de publier le contexte de la demande actuelle sur le Microsoft Azure Service Bus. Un développeur doit inscrire une étape sur ce plug-in qui identifie le message et l’entité cibles afin d'activer la fonctionnalité de publication du bus des services.

    Vous pouvez également créer votre propre plug-in personnalisé, compatible Azure. Le plug-in personnalisé s’exécute en mode de confiance partielle dans le bac à sable et peut appeler toutes les méthodes SDK Microsoft Dynamics CRM. Un plug-in personnalisé peut lancer la publication du contexte Microsoft Dynamics 365 sur le bus des services en incluant quelques lignes standard de code qui indiquent au service asynchrone de publier le contexte de demande. Ce code propre au cloud rend les plug-ins compatibles Azure. Pour plus d’informations sur les plug-ins en général, voir Écrire un plug-in. Pour plus d’informations sur les plug-ins compatibles Azure, voir Écrire un plug-in compatible Azure personnalisé.

  • Activités de workflow personnalisées
    Les activités de workflow personnalisées peuvent être créées pour publier le contexte de données de la demande en cours sur le Microsoft Azure Service Bus.Pour plus d'informations :Exemple : Activité de workflow personnalisée compatible Azure.

  • Microsoft Azure Service Bus
    Le bus des services transmet par relais le contexte d’exécution distant entre Microsoft Dynamics 365 et les écouteurs de solutions du Microsoft Azure Service Bus. Le Service Microsoft Azure Active Directory Access Control Service (ACS) gère la sécurité d’authentification basée sur les revendications.

  • Solution Microsoft Azure
    Pour que la connexion de Dynamics 365 et de Azure fonctionne, il doit y avoir au moins une solution dans un compte de solution Microsoft Azure Service Bus, où la solution contient un ou plusieurs points de terminaison de service. Pour un contrat du point de terminaison de relais, un écouteur compatible Dynamics 365 doit écouter activement sur le point de terminaison la demande Dynamics 365 sur le bus des services. Pour un contrat de point de terminaison de file d’attente, il n’est pas nécessaire qu’un écouteur écoute activement. Un écouteur est rendu compatible Dynamics 365 en l’associant à l’assembly Microsoft.Xrm.Sdk de sorte que le type RemoteExecutionContext soit défini.Pour plus d'informations :Écrire un écouteur pour une solution Microsoft Azure

    Les règles de solution doivent être configurées pour permettre au contexte d’exécution distant Microsoft Dynamics 365 d’être publié sur le bus des services. Pour activer cette publication, ACS doit identifier le déploiement de Dynamics 365 comme un émetteur pris en charge.Pour plus d'informations :Configuration de l'intégration d'Azure avec Microsoft Dynamics CRM 2015.

Important

Pour développer un écouteur de solution pour la plateforme Microsoft Azure, vous devez installer la version 1.7 ou 1.8 du Kit de développement logiciel (SDK) de Microsoft Azure sur votre ordinateur de développement.

Scénario CRM vers le bus des services

Identifions maintenant un scénario qui implémente les composants de connexion mentionnés précédemment. Comme conditions préalables, l'ACS a été configuré pour identifier Microsoft Dynamics 365 comme l’émetteur pris en charge et la solution du Microsoft Azure Service Bus a été configurée avec des règles visant à permettre à Microsoft Dynamics 365 de publier sur le point de terminaison sur lequel l’écouteur écoute.

Le diagramme suivant illustre les éléments physiques qui composent le scénario.

Scénario Microsoft Dynamics CRM vers Service Bus

La séquence des événements identifiés dans ce diagramme est la suivante :

  1. Un écouteur est inscrit sur un point de terminaison de solution du Microsoft Azure Service Bus et commence à écouter activement le contexte d’exécution distant Microsoft Dynamics 365 sur le bus des services.

  2. Un utilisateur effectue une opération dans Microsoft Dynamics 365 qui déclenche l’exécution du plug-in prêt à l’emploi inscrit ou d’un plug-in compatible Azure personnalisé. Le plug-in lance une publication, via une tâche système de service asynchrone, du contexte de demande actuel sur le bus des services.

  3. ACS authentifie les revendications publiées par Microsoft Dynamics 365. Le bus des services transmet par relais le contexte d’exécution distant à l’écouteur. L’écouteur traite les informations de contexte et effectue une tâche professionnelle avec ces informations. Le bus des services notifie le bus des services asynchrone d’une publication réussie et attribue à la tâche système le statut Terminé.

Création d’un contrat entre CRM et une solution Azure

Pour chaque point de terminaison de solution, vous configurez un contrat qui définit la gestion de ces messages de contexte d’exécution distant sur le bus de services et la sécurité qui doit être utilisée sur ce point de terminaison. Les messages du bus des services sont reçus sur un point de terminaison via l’un des contrats pris en charge répertoriés ici.

  • File d'attente
    Un contrat de file d’attente fournit une file d’attente de messages du cloud. Avec un contrat de file d’attente, l’écouteur n’est pas obligé d’écouter activement les messages sur le point de terminaison. Pour les files d’attente, il existe une lecture destructive et une lecture non destructive. Une lecture destructive lit un message disponible dans la file d’attente et le message est supprimé. Une lecture non destructive ne supprime pas de message dans une file d’attente.

    Il existe deux types de files d’attente prises en charge dans Microsoft Dynamics 365 : une file d’attente de messages en mémoire tampon et une file d’attente persistante. Pour les files d’attente de messages en mémoire tampon, les messages de la file d’attente sont supprimés automatiquement s’ils n’ont pas été lus dans un délai préconfiguré, qui est généralement inférieur à 10 minutes. Les files d’attente persistantes ont une disponibilité des messages beaucoup plus longue, qui peut être spécifiée dans le code.

  • Contrat unidirectionnel
    Un contrat unidirectionnel nécessite un écouteur actif. S'il n'y a aucun écouteur actif sur un point de terminaison, la publication de Microsoft Dynamics 365 vers le bus de services échoue.Microsoft Dynamics 365 réessaie d'effectuer la publication à des intervalles de temps augmentant exponentiellement jusqu’à ce que la tâche système asynchrone qui publie la demande soit abandonnée et que son statut passe à « Échec ».

  • Contrat bidirectionnel
    Un contrat bidirectionnel est similaire à un contrat unidirectionnel sauf qu’une valeur de chaîne peut être retournée par l’écouteur à Microsoft Dynamics 365.

  • REST
    Le contrat REST est similaire au contrat bidirectionnel sur un point de terminaison REST.

  • Sujet
    Similaire à une file d’attente sauf qu’un ou plusieurs écouteurs peuvent s’abonner pour recevoir des messages du sujet.

Important

Pour utiliser ces contrats, vous devez créer vos applications d'écoute avec la version 1.7 ou 1.8 du Kit de développement logiciel (SDK) de Microsoft Azure.

Les files d’attente de messages en mémoire tampon sont obsolètes et ne seront plus prises en charge dans la future version de SDK Microsoft Dynamics CRM.

L’identification du type de sécurité utilisé par un contrat fait partie de la configuration du contrat. Un contrat peut utiliser la sécurité de transport, qui utilise SSL (Secure Sockets Layer) (HTTPS).

L’authentification basée sur les revendications est utilisée pour l’accès sécurisé au bus de services. La revendication utilisée pour l’authentification auprès du bus des services est générée dans Microsoft Dynamics 365 et signée par le certificat AppFabricIssuer spécifié dans la base de données de configuration Microsoft Dynamics 365.

Gestion des erreurs d'exécution

Si une erreur s’est produite après une tentative d’accès d’une publication au bus de services, vérifiez le statut de la tâche système associée dans l’application Web Microsoft Dynamics 365 pour obtenir plus d’informations sur l’erreur. Si le bus des services est arrêté ou qu’un écouteur/point de terminaison est indisponible, le message actuel en cours de traitement dans Microsoft Dynamics 365 n’est pas publié sur le bus. Le service asynchrone continuera de tenter de publier le message de manière exponentielle en essayant de publier d’abord fréquemment puis à intervalles de plus en plus longs. En cas d’erreur Microsoft Dynamics 365 interne, aucune publication de message n’est tentée. En cas d’erreur de bus des services externe ou d’erreur réseau, la tâche système associée sera mise en attente.

Voir aussi

Extensions Azure pour Microsoft Dynamics CRM 2015
Configuration de l'intégration d'Azure avec Microsoft Dynamics CRM 2015
Écrire des plug-ins pour étendre les processus d’entreprise
Service asynchrone dans Microsoft Dynamics CRM 2015
Entité AsyncOperation (tâche système)

© 2017 Microsoft. Tous droits réservés. Copyright