Partager via


Outil du compilateur WsUtil

L’outil compilateur windows Web Services, WsUtil.exe, prend en charge le modèle de service et la sérialisation de types de données. Il traite WSDL, le schéma XML et les documents de stratégie, et génère des en-têtes C et des fichiers sources. Cet outil est similaire à l’outil de compilateur WSDL pour le code managé, mais vise plutôt le code natif.

Pour prendre en charge le modèle de service , WsUtil.exe génère des en-têtes à utiliser pour le client et le service. Il génère le fichier proxy C côté client et les fichiers stub C côté service, selon les besoins.

Pour prendre en charge de sérialisation, le compilateur génère des en-têtes pour les descriptions d’éléments pour les définitions d’éléments globaux et toutes les informations de définition de type dans les fichiers proxy consommés par le moteur de sérialisation.

Pour connaître les options de ligne de commande pour le traitement des fichiers WSDL, des fichiers de schéma XML et des fichiers de stratégie de service web, consultez les rubriques suivantes :

Sécurité

Lorsque vous utilisez WsUtil, tenez compte des problèmes suivants et observez les précautions appropriées :

  • Wsutil ne récupère pas les métadonnées XML sur le réseau, et wsutil ne résout pas les instructions import et/ou include dans les fichiers de métadonnées d’entrée. Wsutil ouvre et lit les fichiers wsdl, xsd et policy. Les métadonnées XML ne sont pas résistantes aux falsifications. Assurez-vous que vous utilisez uniquement wsdl, xsd et les fichiers de stratégie sont acquis à partir de la source approuvée et veillez à protéger les fichiers contre la falsification avant et après leur utilisation. Examinez attentivement le contenu des fichiers d’entrée et vérifiez que le contenu des fichiers est sûr à utiliser dans l’application. Wsutil.exe n’effectue aucune vérification de l’authenticité des fichiers de métadonnées.
  • Wsutil génère des fichiers d’en-tête et de stub, qui ne sont pas résistants aux falsifications. Vous devez définir les droits d’accès de niveau corrects sur les fichiers sources générés par wsutil.exe pour empêcher l’accès non autorisé à ces fichiers. Wsutil utilise System.IO.StreamWriter pour créer les fichiers de sortie.
  • Les utilisateurs doivent être conscients que Wsutil peut remplacer leurs fichiers locaux et qu’ils doivent veiller à spécifier des noms et répertoires de fichiers sécurisés pour les fichiers de sortie à l’aide du commutateur /out.
  • Wsutil ou wsutilhelper.dll chargé dans wsutil.exe, peut se terminer de manière inattendue ou consommer une grande quantité de ressources système lors d’une attaque ou dans le traitement d’une très grande quantité de métadonnées d’entrée. L’outil est conçu pour être utilisé pendant le temps de développement uniquement cet outil doit être utilisé comme outil de temps de développement uniquement. Il peut ne pas être sûr d’être utilisé dans le niveau intermédiaire pour traiter les informations de stratégie.
  • Wsutilhelper.dll DLL d’assistance est chargée dans des wsutil.exe managées pour traiter les informations de stratégie. L’utilisateur doit s’assurer qu’aucun fichier binaire malveillant avec le même nom de fichier n’existe dans le chemin binaire. De même, l’utilisateur doit s’assurer que dans l’environnement de génération, le chemin binaire est configuré correctement qu’il n’existe aucun binaire malveillant avec le même nom «wsutil.exe».
  • Wsutil génère une annotation SAL pour les champs d’opérations et de structure lorsque cela est possible. L’utilisateur des fichiers générés par wsutil doit respecter la condition spécifiée via l’annotation SAL.

Vue d’ensemble de la couche de modèle de service

sérialisation

outil compilateur de services web

prise en charge de WSDL

prise en charge du schéma

de prise en charge de la stratégie