Liaison d'objets avec des services Web REST
Vous pouvez ajouter un comportement Service Web REST à un objet en utilisant Concepteur d'objet, afin d'offrir une large gamme d'options pour l'intégration avec d'autres applications comme Ivanti Automation.
Cette fonction avancée est conçue pour les personnes qui maîtrisent l'utilisation des technologies REST, JSON, Postman et Swagger. Si vous avez besoin de l'aide d'Ivanti Professional Services pour l'utilisation de cette fonction, contactez votre fournisseur.
Avant de configurer Service Desk
Avant de commencer à configurer le comportement dans Service Desk, nous vous recommandons d'utiliser d'abord des outils comme Swagger et Postman pour concevoir et configurer l'interaction avec le poste client, ce qui facilitera le débogage éventuel. Après avoir testé les interactions de cette façon, vous pouvez configurer Service Desk pour qu'il les reproduise.
Nous vous recommandons aussi de concevoir ces nouveaux éléments dans une instance de développement, de les tester soigneusement, puis de les transférer vers l'environnement de production, au lieu d'appliquer le nouveau contenu directement à cet environnement de production. Pour en savoir plus, reportez-vous à « Promotion de conceptions REST dans vos environnements de production ».
Configuration de Service Desk
Une fois que vous avez créé et testé vos appels d'API pour REST hors de Service Desk, reproduisez ces interactions dans les concepteurs Service Desk. Attention, l'appel REST est établi uniquement lorsque vous créez une instance d'un objet avec le comportement REST. La mise à jour et le nouvel enregistrement de cet objet n'envoient pas de nouvel appel REST.
La première étape consiste à ajouter le comportement de service Web REST à l'objet que vous prévoyez d'utiliser pour l'intégration avec le poste client.
Pour ajouter le comportement Service Web REST à un objet :
- Dans Concepteur d'objet, ouvrez l'objet avec lequel vous voulez utiliser le service Web REST.
- Sélectionnez l'objet en haut de l'arborescence Attributs, puis, dans la grille des propriétés, cliquez sur en regard de Comportements.
La boîte de dialogue Sélection du comportement s'affiche. - Cliquez sur Service Web REST dans la liste Éléments disponibles, puis cliquez sur .
L'entrée Service Web REST passe dans la liste Éléments sélectionnés. - Cliquez sur OK et enregistrez les changements.
La boîte de dialogue Sélection du comportement se ferme et le nouvel élément nommé Services Web REST s'affiche dans la grille des propriétés.
De plus, quatre nouveaux attributs sont créés pour l'objet : Création d'un service REST - Corps de demande, Création d'un service REST - État, Création d'un service REST - URI de demande et la relation nommée Création d'un service REST - Modèle de corps de demande. Il s'agit d'une relation avec un nouvel objet Liste de références appelé ObjectBody. (Object étant le nom de l'objet auquel vous avez ajouté le comportement.) - Dans la grille des propriétés, cliquez sur en regard de Services Web REST.
La boîte de dialogue Services Web REST s'affiche. - Dans l'onglet Demande, entrez l'URI du poste client à utiliser dans le champ URI de poste client.
- Sélectionnez POST, PATCH ou DELETE selon vos besoins.
POST sert généralement à créer des éléments, alors que PATCH permet de mettre à jour des éléments existants. Pour créer un élément avec le service Web REST, puis le mettre à jour avec le service REST, vous devez créer deux objets : l'un pour créer l'élément avec POST et l'autre pour le mettre à jour avec PATCH. - Dans la liste déroulante Type de contenu, sélectionnez le type du contenu que vous envoyez.
- Dans la liste Type d'authentification, sélectionnez le type voulu : Aucun, De base ou Clé API (Fournisseur), OAuth2 (Références d'authentification client) ou OAuth2 (Mot de passe), ainsi que les paramètres supplémentaires éventuellement nécessaires.
- Cliquez sur OK.
Vous devrez créer une fenêtre pour chaque nouvel objet créé.
Vous pouvez inclure des variables de réservation dans le champ URI de poste client. C'est généralement l'option choisie pour PATCH.
Vous pouvez être amené à désactiver temporairement le comportement REST. Vous le faites pour un objet spécifique en désélectionnant la case à cocher Activer dans la boîte de dialogue Services Web REST.
Pour effectuer à l'avenir d'autres opérations sur l'enregistrement créé avec le Service Web REST, vous devez préciser le chemin de l'ID unique renvoyé par votre application externe, ainsi que l'emplacement de Service Desk où vous voulez stocker ces informations.
Pour stocker des ID uniques :
- Dans l'onglet Mappage de la réponse de la boîte de dialogue Sélection du comportement, entrez dans le champ Source le chemin de l'ID unique renvoyé par votre application externe.
Vous pouvez utiliser la notation à points pour identifier des éléments dans la charge de traitement source. Entrez * pour utiliser la réponse en entier. - Dans le champ Cible, entrez l'attribut Service Desk de type String (Chaîne) où stocker la valeur renvoyée dans Service Desk.
Son format sera {_Demande/Champ}. - Dans la liste déroulante Accepter, sélectionnez le type de contenu que vous voulez recevoir.
Si vous avez sélectionné un format XML, spécifiez la valeur Espace de noms XML, en séparant les noms des différents espaces de noms par un espace. Par exemple, xmlns:h="http://www.w3.org/TR/html4/" xmlns:r="http://www.exemple.com/exemple/" - Cliquez sur OK.
Maintenant que vous avez configuré le lien entre l'objet Service Desk et le poste client, vous pouvez spécifier le corps de la charge de traitement à envoyer. Cette dernière doit être de type JSON ou XML. Certains postes client acceptent plusieurs charges de traitement différentes. Par exemple, Ivanti Automation fournit un seul poste client qui accepte de charge de traitement pour plusieurs dossiers d'exploitation, où le dossier requis est précisé dans le corps de la charge de traitement.
C'est pourquoi le système crée la relation Création d'un service REST - Modèle de corps de demande avec l'objet Liste de références ObjectBody lorsque vous ajoutez le comportement de service Web REST. Cela vous permet de créer une liste de références (pour en savoir plus, reportez-vous à « Création de nouvelles listes de références ») pour stocker les différents corps de charge de traitement, puis, au cours de la procédure, de fournir un mécanisme pour sélectionner l'instance de liste de références appropriée (par exemple, en utilisant un type de valeur dans une action automatique ; pour en savoir plus, reportez-vous à « Définition de valeurs dynamiques pour les actions automatiques »). En ajoutant des marques de réservation semblables à celles utilisées pour spécifier des valeurs dynamiques dans les actions automatiques de votre corps d'objet (ObjectBody), vous pouvez inclure des valeurs extraites d'instances d'objets Service Desk afin de les inclure dans la charge de traitement. Si vous utilisez des variables de réservation, ajoutez-les au contexte de l'objet REST.
Chaque objet doté du comportement REST doit comporter au moins un élément dans la liste de références correspondante où figure le corps de charge de traitement approprié.
Vous pouvez utiliser un outil comme Swagger pour faire un appel à votre poste client ; cela vous aidera à concevoir cette charge de traitement.
Pour voir un exemple concret d'utilisation du service Web REST pour automatiser le traitement des demandes avec Ivanti Automation, visitez le site de la communauté Ivanti.