Xanadu : créer des intégrations avec des applications
ft:clusterId
crint
bundleId
crint
workflow
Creator
Ensembles d’importations de services Web : exigences de sécurité
Rversion finale: Xanadu
Mis à jour 1 août 2024
2 minutes de lecture
Les jeux d’importation de services Web utilisent les mêmes mécanismes de sécurité que les services Web SOAP.
L’authentification de base nécessite qu’un utilisateur de service Web fournisse un nom d’utilisateur et un mot de passe valides.
La sécurité contextuelle exige qu’un utilisateur de service Web respecte la règle de contrôle d’accès de la table interrogée.
Si votre instance utilise des paramètres de sécurité élevée, l’utilisateur du service Web peut également avoir besoin du rôle SOAP .
Liens connexes des jeux d’importation de services Web
Lors de l’affichage d’une table de services Web mappée, vous disposez des liens connexes suivants.
Jeux d’importation — Jeux d’importation associés à ce jeu d’importation de service Web.
Cartes de transformation : liste des cartes de transformation associées à ce service Web.
Historique de transformation — L’histoire de la transformation.
Modifier le service Web : permet de modifier le service Web.
L’image suivante montre un enregistrement qui a été inséré dans la notification du jeu d’importation de services web. L’enregistrement cible est la création ou la modification de l’enregistrement de la table Incident résultant de la transformation.Figure 1. Soap Notification
Exemple de jeux d’importation de services web
Cet exemple présente le WSDL, l’enveloppe et la réponse SOAP, l’invocation Perl et le résultat d’une importation de service Web SOAP.
<?xmlversion="1.0"encoding="UTF-8"?><SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Body><insertResponse><sys_id>b54aafbfc0a8006f0058db95daa5b88d</sys_id><table>incident</table><display_name>number</display_name><display_value>INC10008</display_value><status>ignored</status><status_message>No field values changed</status_message></insertResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
Exemple d’invocation à l’aide de Perl
L’exemple de script suivant utilise le service Web de notification pour créer un incident en tant qu’utilisateur itil . Il utilise le langage Perl et le paquet SOAP ::Lite.
#!/usr/bin/perl -w
#use SOAP::Lite ( +trace => all, maptype => {} );use SOAP::Lite;
sub SOAP::Transport::HTTP::Client::get_basic_credentials{return'itil'=>'itil';// set basic auth credentials for the itil user
}
my$soap= SOAP::Lite->proxy('http://localhost:8080/glide/imp_notification.do?SOAP');
my$method= SOAP::Data->name('insert')->;attr({xmlns =>'http://www.service-now.com/'});
# insert into the web servicemy@params=( SOAP::Data->name(message =>'problem detected for database DB12DG'));push(@params, SOAP::Data->name(source =>'DB12DG'));push(@params, SOAP::Data->name(uuid =>'HGAF76251HGF2'));
my$result=$soap->call($method=>@params);
print_fault($result);//print any SOAP faults
print_result($result);//print any results
sub print_result {my($result)=@_;if($result->body&&$result->body->{'insertResponse'}){my%keyHash=%{$result->body->{'insertResponse'}};foreachmy$k(keys%keyHash){print"name=$k value=$keyHash{$k}\n";}}}
sub print_fault {my($result)=@_;if($result->fault){print"faultcode=".$result->fault->{'faultcode'}."\n";print"faultstring=".$result->fault->{'faultstring'}."\n";print"detail=".$result->fault->{'detail'}."\n";}}
Ce qui suit est le résultat affiché par le script Perl sur la console.