Guide de flux de travail du connecteur de service web pour SOAP
Cet article explique comment créer un projet pour votre source de données dans l’outil de configuration du service web. Suivez ces étapes pour créer un projet.
Ouvrez l’outil de configuration du service web. Il ouvre un projet vide.
Sélectionnez Projet SOAP , puis Ajouter.
Dans la page suivante, fournissez les informations suivantes, puis sélectionnez Suivant :
- Nom du nouveau service web
- Adresse (chemin WSDL) pour récupérer les services, points de terminaison et opérations exposés
- Espace de noms
- Mode de sécurité (type d’authentification)
Dans cet exemple, la page Informations d’identification s’affiche avec la configuration requise pour le mode de sécurité de base (le mode sélectionné à l’étape précédente). Si « None » a été spécifié pour le mode de sécurité, une page d’informations d’identification ne s’affiche pas. Sélectionnez Suivant.
Le chemin WSDL est accessible pour récupérer les informations de service et la liste des fonctions exposées s’affiche. Si le chemin WSDL entré est incorrect, l’outil de configuration ne parvient pas à récupérer les informations du service et génère une erreur.
Une fois la découverte effectuée, elle répertorie le point de terminaison et les opérations découvertes. Sélectionnez Terminer.
La compilation est effectuée. La compilation est un processus de compilation de l’assembly de contrat de données, qui peut prendre du temps. L’utilisateur est informé des erreurs de compilation. Une fois la découverte effectuée, l’outil affiche la page suivante :
Développement du projet SOAP et sélection du point de terminaison exposé fourni sous l’écran. Cet écran répertorie les opérations déclarées sous le point de terminaison.
Le développement du point de terminaison affiche la liste des opérations. Une opération est une fonction déclarée par un point de terminaison. Chaque opération traite un type de tâche qui peut être effectué au sein du service. Cet écran répertorie les arguments déclarés pour l’opération. Ces arguments sont ensuite définis lorsque l’opération est utilisée dans la configuration des flux de travail.
L’étape suivante consiste à définir le schéma d’espace de connecteur, qui est obtenu en créant le type d’objet et en définissant leurs types d’objets. Sélectionnez Types d’objets , puis Ajouter. Dans la nouvelle fenêtre, ajoutez un nouveau type d’objet et fournissez un nom. Sélectionnez OK.
L’ajout d’un type d’objet fournit l’écran ci-dessous.
Le volet droit correspondant au type d’objet vous permet de conserver les attributs et leurs propriétés pour le type d’objet sélectionné. Sélectionnez Ajouter. Une nouvelle fenêtre s’ouvre pour ajouter des attributs :
L’écran suivant s’affiche après l’ajout de tous les attributs requis :
Le type d’objet et les attributs une fois créés fournissent des flux de travail vides qui répondent aux opérations effectuées dans Microsoft Identity Manager 2016 (MIM).
Configurer des flux de travail dans l’outil de configuration du service web
L’étape suivante consiste à configurer les workflows pour votre type d’objet. Les fichiers de flux de travail sont une série d’activités qui sont utilisées par web Services Connector au moment de l’exécution. Les workflows sont utilisés pour implémenter l’opération MIM appropriée. L’outil de configuration du service web vous aide à créer quatre flux de travail différents :
Import : importez des données à partir d’une source de données pour les deux types de flux de travail suivants :
- Importation complète : importation complète qui peut être configurée.
- Importation Delta : non prise en charge par l’outil de configuration du service web.
Exporter : exportez des données de MIM vers une source de données connectée. Les trois actions suivantes sont prises en charge pour l’opération. Vous pouvez configurer ces actions en fonction de vos besoins.
- Ajouter
- Supprimer
- Replace
Mot de passe : effectuez la gestion des mots de passe pour l’utilisateur (type d’objet). Deux actions sont disponibles pour cette opération :
- Définition du mot de passe
- Modifier le mot de passe
Tester la connexion : configurez un flux de travail pour case activée si la connexion avec le serveur source de données est établie avec succès.
Notes
Vous pouvez configurer ces flux de travail pour votre projet ou télécharger le projet par défaut à partir du Centre de téléchargement Microsoft.
Concepteur de flux de travail
Le workflow Designer ouvre la zone de travail pour configurer le flux de travail en fonction des besoins. Pour chaque type d’objet (nouveau /existant), l’outil de configuration fournit les nœuds pour les flux de travail pris en charge par l’outil.
Le Designer workflow est composé des éléments d’interface utilisateur suivants :
Nœuds dans le volet gauche : ceux-ci vous aident à sélectionner lequel vous souhaitez concevoir le flux de travail.
Central Workflow Designer : ici, vous pouvez supprimer les activités de configuration des flux de travail. Pour effectuer diverses opérations MIM (Exportation, Importation, Gestion des mots de passe), vous pouvez utiliser les activités de flux de travail standard et personnalisées de .NET Workflow Framework 4. L’outil De configuration du service web utilise des activités de flux de travail standard et personnalisées. Pour plus d’informations sur les activités standard, consultez Utilisation de concepteurs d’activités.
Dans le Designer de flux de travail central, un cercle rouge avec un point d’exclamation à côté de toute activité indique que l’opération a été abandonnée et n’est pas définie correctement et complètement. Pointez sur le cercle rouge pour découvrir l’erreur exacte. Une fois l’activité correctement définie, le cercle rouge passe à la marque d’informations jaune.
Dans le Designer de flux de travail central, une marque d’informations de triangle jaune à côté de toute activité indique que l’activité est définie, mais vous pouvez faire plus pour terminer l’activité. Pointez sur le triangle jaune pour afficher plus d’informations.
Boîte à outils : package tous les outils, y compris les activités système et personnalisées, ainsi que les instructions prédéfinies pour concevoir le flux de travail. Pour plus d'informations, consultez Boîte à outils.
Sections de boîte à outils : la boîte à outils comporte les sections et catégories suivantes :
Description : en-tête de la boîte à outils. Un onglet accède à la boîte à outils et aux propriétés de l’activité de flux de travail sélectionnée.
Flux de travail d’importation : activités personnalisées pour configurer les flux de travail d’importation.
Flux de travail d’exportation : activités personnalisées pour configurer les flux de travail d’exportation.
Courant : activités personnalisées pour configurer n’importe quel flux de travail.
Déboguer : activités de flux de travail système pour le débogage définies dans workflow 4. Ces activités permettent le suivi des problèmes pour un workflow.
Instructions : activités de flux de travail système définies dans Workflow 4. Pour plus d’informations, consultez Utilisation de concepteurs d’activités.
Propriétés : l’onglet Propriétés affiche les propriétés d’une activité de flux de travail particulière qui est supprimée dans la zone du concepteur et sélectionnée. La figure à gauche montre les propriétés de l’activité Assigner . Pour chaque activité, les propriétés diffèrent et sont utilisées lors de la configuration du workflow personnalisé. Cet onglet vous permet de définir les attributs de l’outil sélectionné qui a été déposé dans le concepteur de flux de travail central. Pour plus d'informations, consultez Propriétés.
Barre des tâches : La barre des tâches comprend trois éléments : Variables, Arguments et Imports. Ces éléments sont utilisés avec les activités de flux de travail. Pour plus d’informations, consultez Présentation d’un développeur à Windows Workflow Foundation (WF) dans .NET 4.
Configurer un workflow d’importation complète dans l’outil de configuration du service web
Les étapes suivantes montrent comment configurer des flux de travail d’importation complète pour SOAP à l’aide de l’outil de configuration du service web.Avertissement
Cet exemple crée uniquement un workflow. Des modifications du flux de travail, telles que l’utilisation d’une logique personnalisée dans l’API, peuvent être nécessaires.
Sélectionnez le flux de travail Importation complète à configurer. Les arguments et les importations sont déjà définis et sont spécifiques aux activités. Pour plus d’informations, consultez les écrans suivants.
Après la reconfiguration des appels, modifiez les noms des attributs qui changent, ajoutez ou modifiez l’espace de noms en variables qui font référence à la structure de retour de l’API et aux types d’objets qui font référence à l’ancien espace de noms. La boîte à outils du volet droit contient toutes les activités spécifiques au workflow personnalisées dont vous avez besoin pour la configuration. Affectez les valeurs aux variables que vous allez utiliser pour votre logique. Accédez à la section inférieure du concepteur de flux de travail central et déclarez les variables. Les variables sont déclarées à l’étape suivante.
Ajouter une activité Sequence. Faites glisser le concepteur d’activités Séquence à partir de la boîte à outils et déposez-le sur l’Designer surface de flux de travail Windows. Reportez-vous aux écrans suivants. L’activité Sequence contient une collection ordonnée d’activités enfants qu’elle exécute dans l’ordre.
Pour ajouter une variable, recherchez Créer une variable. Tapez wsResponse pour le Nom, sélectionnez la liste déroulante Type de variable, puis sélectionnez Rechercher les types. Une boîte de dialogue s’affiche. SélectionnezRéponsepar défaut>générée>. Conservez les valeurs Étendue et Par défaut non sélectionnées. Vous pouvez également définir ces valeurs à l’aide de la vue Propriétés .
Ajoutez maintenant toutes les autres variables et ci-dessous est l’écran final.
Faites glisser un autre concepteur d’activités Sequence à partir de la boîte à outils dans l’activité Séquence déjà ajoutée.
Faites glisser un WebServiceCallActivity présenté sous Commun. Cette activité est utilisée pour appeler l’opération de service Web disponible après la découverte. Il s’agit d’une activité personnalisée qui est courante dans différents scénarios d’opération.
Pour utiliser l’opération de service Web, définissez les propriétés suivantes :
Nom du service : entrez un nom pour le service web.
Nom du point de terminaison : spécifiez un nom de point de terminaison pour le service sélectionné.
Nom de l’opération : spécifiez l’opération correspondante pour le service.
Argument : sélectionnez Arguments. Dans la boîte de dialogue suivante, attribuez les valeurs d’argument, comme illustré dans la figure suivante :
Important
Ne modifiez pas le nom, la direction ou le type d’un argument à l’aide de cette boîte de dialogue. Si l’une de ces valeurs est modifiée, l’activité devient non valide. Définissez uniquement la valeur de l’argument. Comme le montre cette figure, la valeur wsResponse est définie.
Ajoutez une activité ForEach juste en dessous de WebServiceCallActivity. Cette activité est utilisée pour itérer sur tous les attributs (ancres et non-ancres) de type objet. Lorsque vous faites glisser cette activité vers votre surface de flux de travail Designer, elle énumère automatiquement tous les noms d’attribut de votre objet. Définissez les valeurs requises selon l’écran suivant :
Faites glisser une activité CreateCSEntryChangeScope dans le corps ForEach . Cette activité est utilisée pour créer une instance d’objet CSEntryChange dans le domaine de workflow pour chaque enregistrement respectif lors de la récupération des données de la source de données cible. Le fait de faire glisser cette activité fournit l’écran ci-dessous. Les activités CreateAnchorAttribute sont automatiquement héritées.
Définissez la valeur de l’expression DN sur
‘string.Concat ("Employee",item.EmployeeID)’
. Définissez AnchorValue pour l’EmployeeID sur « Convert.tostring(item). EmployeeID)'. Définissez ObjectTypeName sur Employee. Après avoir apporté ces modifications, l’écran suivant s’affiche :Notes
Les valeurs d’ancre et les noms d’objets varient en fonction du service web exposé. La figure montre un exemple.
Faites glisser une activité CreateAttributeChange sous l’activité CreateAnchorAttribute . Le nombre d’activités à faire glisser est égal au nombre d’attributs non ancre. Pour plus d’informations, consultez la figure suivante.
Faites glisser CreateValueChangeActivity dans l’activité CreateAttributeChange et définissez la valeur de l’attribut conformément à l’écran ci-dessous.
Notes
Pour utiliser cette activité, sélectionnez et affectez les champs respectifs dans la liste déroulante et affectez les valeurs. Pour les attributs à valeurs multiples, supprimez plusieurs activités CreateValueChangeActivity à l’intérieur d’une activité CreateAttributeChangeActivity .
Pour ajouter des conditions pour un attribut, ajoutez une activité If comme indiqué dans la figure suivante :
Enfin, ajoutez une activité Assign et définissez l’expression, comme illustré dans la figure suivante :
Enregistrez ce projet à l’emplacement
%FIM_INSTALL_FOLDER%\Synchronization Service\Extensions
.Les projets par défaut doivent être téléchargés et enregistrés à l’emplacement
%FIM_INSTALL_DIR\2010\Synchronization Service\Extensions
sur le système cible. Les projets sont ensuite visibles dans l’Assistant Connecteur de service web.Lors de l’exécution du fichier exécutable, vous êtes invité à spécifier l’emplacement de l’installation. Entrez l’emplacement d’enregistrement.
Important
Le fichier projet peut être enregistré et ouvert à partir de n’importe quel emplacement (avec les privilèges d’accès appropriés de son exécuteur). Seuls les fichiers projet enregistrés dans le
Synchronization Service\Extension
dossier peuvent être sélectionnés dans l’Assistant Connecteur de service web accessible via l’interface utilisateur de synchronisation MIM.L’utilisateur qui exécute l’outil de configuration du service web a besoin des privilèges suivants :
- Contrôle total du dossier Extension du service de synchronisation.
- Accès en lecture à la clé
HKLM\System\CurrentControlSet\Services\FIMSynchronizationService\Parameters
de Registre à travers laquelle se trouve le chemin du dossier d’extension.
Configurer les flux de travail d’exportation dans l’outil de configuration du service web
Les sections suivantes montrent comment exporter vos flux de travail à l’aide de l’outil de configuration du service web.
Ajouter des flux de travail
Ajoutez des flux de travail d’exportation en suivant ces étapes dans l’outil de configuration du service web.Sélectionnez le flux de travail d’exportation à configurer. Sous Exporter, sélectionnez Ajouter. Les arguments et les importations sont déjà définis et sont spécifiques aux activités. Pour plus d’informations, consultez les écrans suivants.
Ajouter une activité Sequence . Faites glisser le concepteur d’activités Séquence à partir de la boîte à outils et déposez-le sur l’Designer surface de flux de travail Windows. L’activité Sequence contient une collection ordonnée d’activités enfants qu’elle exécute dans l’ordre. Sélectionnez Créer une variable. Affectez les valeurs aux variables que vous allez utiliser pour votre logique.
Notes
Les étapes d’ajout d’une variable sont décrites dans la section relative à la création de flux de travail d’importation complets.
Faites glisser une activité ForEach dans l’activité Sequence déjà ajoutée pour itérer sur les valeurs d’attribut d’ancre.
Sélectionnez Propriétés et définissez l’écran Valeurs en fonction de l’écran ci-dessous. Ici objectToExport est un argument.
Définir DisplayName sur ForEach<AnchorAttribute>
Définissez TypeArgument sur
Microsoft.MetadirectoryServices.AnchorAttribute
.Ajoutez une activité Switch dans le corps ForEach du AnchorAttribute.
Ajoutez une expression conformément à l’écran ci-dessous.
Sélectionnez Ajouter une nouvelle casse et entrez une valeur pour l’EmployeeId. Faites glisser une activité Sequence et ajoutez dans celle-ci une activité Attribuer .
Affectez les propriétés To et Value pour l’activité Assigner .
L’activité ForEach est utilisée pour les valeurs d’ancre. Ajoutez une autre activité ForEach pour affecter des valeurs non ancres. Dans cet exemple, l’ancre AttributeChange est utilisée.
Ajoutez une activité Switch dans le corps ForEach de l’ancre AttributeChange .
Ajoutez une expression conformément à l’écran ci-dessous.
Sélectionnez Ajouter une nouvelle casse et entrez une valeur pour FirstName. Faites glisser une activité Sequence et ajoutez dans celle-ci une activité Attribuer . Affectez les propriétés To et Value pour l’activité Assigner .
Ajoutez des valeurs pour les attributs requis comme LastName, Email, etc.
Sous Commun, faites glisser un WebServiceCallActivity et définissez des valeurs pour ses arguments.
Important
Ne modifiez pas le nom, la direction ou le type d’un argument à l’aide de cette boîte de dialogue. Si l’une de ces valeurs est modifiée, l’activité devient non valide. Définissez uniquement la valeur de l’argument. Comme le montre cette figure, la valeur wsResponse est définie.
Enfin, ajoutez une activité If pour case activée réponses retournées par l’opération de service web.
La création du flux de travail d’exportation avec l’opération Ajouter est terminée :
Enregistrez ce projet à l’emplacement %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions
.
Supprimer des workflows
Supprimez les flux de travail d’exportation en suivant ces étapes dans l’outil de configuration du service web.
Sélectionnez le flux de travail d’exportation à configurer. Sous Exporter, sélectionnez Supprimer. Les arguments et les importations sont déjà définis et sont spécifiques aux activités. Pour plus d’informations, consultez les écrans suivants.
Ajouter une activité Sequence . Sélectionnez Créer une variable. Affectez les valeurs aux variables que vous allez utiliser pour votre logique.
Notes
Les étapes d’ajout d’une variable sont décrites dans la section relative à la création de flux de travail d’importation complets.
Faites glisser une activité ForEach dans l’activité Sequence déjà ajoutée pour itérer sur les valeurs d’attribut d’ancre.
Sélectionnez Propriétés et définissez l’écran Valeurs par ci-dessous. Ici objectToExport est un argument.
Définissez DisplayName sur
ForEach\<AnchorAttribute\>
:Définissez TypeArgument sur
Microsoft.MetadirectoryServices.AnchorAttribute
:Ajoutez une activité Switch dans le corps ForEach du AnchorAttribute.
Ajoutez une expression conformément à l’écran ci-dessous.
Sélectionnez Ajouter une nouvelle casse et entrez une valeur pour l’EmployeeId. Faites glisser une activité Sequence et ajoutez dans celle-ci une activité Attribuer .
Affectez les propriétés To et Value pour l’activité Assigner .
Sous Commun, faites glisser un WebServiceCallActivity et définissez des valeurs pour ses arguments.
Important
Ne modifiez pas le nom, la direction ou le type d’un argument à l’aide de cette boîte de dialogue. Si l’une de ces valeurs est modifiée, l’activité devient non valide. Définissez uniquement la valeur de l’argument. Comme le montre cette figure, la valeur employeeID est définie.
Enfin, ajoutez une activité If pour case activée les réponses retournées par l’opération de service web.
La suppression du flux de travail d’exportation avec l’opération Supprimer est terminée :
Enregistrez ce projet à l’emplacement %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions
.
Remplacer les flux de travail
Remplacez les flux de travail d’exportation en suivant ces étapes dans l’outil de configuration du service web.
Sélectionnez le flux de travail d’exportation à configurer. Sous Exporter, sélectionnez Remplacer. Les arguments et les importations sont déjà définis et sont spécifiques aux activités. Pour plus d’informations, consultez l’écran ci-dessous.
Ajoutez une activité Sequence .
Faites glisser une activité ForEach pour l’attribut< AnchorAttribute>.
Ajoutez une autre activité ForEach<AttributeChange> pour affecter des valeurs non d’ancre.
Enfin, l’écran ressemble à la figure suivante. Les instructions de configuration de cette activité sont fournies dans la section relative à l’ajout de flux de travail d’exportation.
Sous Commun, faites glisser un WebServiceCallActivity et définissez Des valeurs pour ses arguments.
Important
Ne modifiez pas le nom, la direction ou le type d’un argument à l’aide de cette boîte de dialogue. Si l’une de ces valeurs est modifiée, l’activité devient non valide. Définissez uniquement la valeur de l’argument . Comme le montre cette figure, la valeur employé est définie.
Enfin, ajoutez une activité If pour case activée les réponses retournées par l’opération de service web.
Le remplacement du flux de travail d’exportation par l’opération Remplacer est terminé :
Enregistrez ce projet à l’emplacement %FIM_INSTALL_FOLDER%\Synchronization Service\Extensions
.
Activités de débogage
Les activités personnalisées suivantes sont disponibles pour vous aider à déboguer le modèle de workflow.
Activité de journal
L’activité Journal est utilisée pour écrire des messages texte dans le fichier journal. Pour plus d’informations, consultez Journalisation.
Notes
Si vous n’êtes pas en mesure de déboguer facilement votre workflow, essayez de le déboguer dans l’environnement de production.
Pour utiliser l’activité Journal , définissez les propriétés suivantes. Les propriétés sont visibles lorsque vous sélectionnez l’activité dans workflow Designer et affichez les propriétés de l’activité.
Activité WriteLine
L’activité WriteLine est utilisée pour écrire des messages texte dans l’enregistreur d’un fournisseur. Si aucun writer n’est disponible, l’activité WriteLine écrit le texte dans la fenêtre de console.
Dans la zone de texte, écrivez le message que vous souhaitez voir dans la cible de l’enregistreur.
Important
La fenêtre de console ne peut pas être utilisée pour cette activité. Utilisez un autre enregistreur de sortie de fenêtre pour cette tâche.
Pour utiliser l’activité WriteLine , définissez les propriétés suivantes. Les propriétés sont visibles lorsque vous sélectionnez l’activité dans workflow Designer et affichez les propriétés de l’activité.
Niveau de journalisation : spécifie la quantité de contenu à écrire dans la valeur de journal. Les valeurs possibles sont les suivantes :
- Élevé : écrivez le message LogText dans le fichier journal si la gravité du journal est définie sur Élevé.
- Verbose : écrivez le message LogText dans le fichier journal si la gravité du journal est définie sur Verbose.
- Désactivé : n’écrivez pas dans le fichier journal.
LogText : spécifie le contenu texte à écrire dans le journal.
Balise : ajoute une balise au texte pour identifier le type de contenu en cours d’écriture dans le journal. Les valeurs possibles sont : Error, Trace ou Warning.