Udostępnij przez


Narzędzie kompilatora WsUtil

Narzędzie kompilatora usług sieci Web systemu Windows, WsUtil.exe, obsługuje model usługi i serializacji typów danych. Przetwarza dokumenty WSDL, schemat XML i zasady oraz generuje nagłówki języka C i pliki źródłowe. To narzędzie jest podobne do narzędzia kompilatora WSDL dla kodu zarządzanego, ale jest przeznaczone do kodu natywnego.

Aby obsługiwać model usługi, WsUtil.exe generuje nagłówki, które mają być używane zarówno dla klienta, jak i usługi. Generuje plik proxy języka C po stronie klienta i pliki zastępcze języka C po stronie usługi zgodnie z potrzebami.

Aby obsługiwać serializacji, kompilator generuje nagłówki dla opisów elementów globalnych definicji elementów oraz wszystkie informacje o definicji typu w plikach proxy używanych przez aparat serializacji.

Aby uzyskać opcje wiersza polecenia dotyczące przetwarzania plików WSDL, plików schematu XML i plików zasad usługi internetowej, zobacz następujące tematy:

Bezpieczeństwo

W przypadku korzystania z narzędzia WsUtil należy pamiętać o następujących problemach i przestrzegać odpowiednich środków ostrożności:

  • Narzędzie Wsutil nie pobiera metadanych XML przez sieć, a narzędzie wsutil nie rozpoznaje instrukcji importu i/lub dołącza instrukcji w plikach metadanych wejściowych. Narzędzie Wsutil otwiera i odczytuje pliki wsdl, xsd i zasad. Metadane XML nie są odporne na naruszenia. Upewnij się, że używasz tylko plików wsdl, xsd i zasad są uzyskiwane z zaufanego źródła i upewnij się, że przed ich użyciem należy chronić pliki przed ich naruszeniem i po nim. Dokładnie przejrzyj zawartość plików wejściowych i sprawdź, czy zawartość plików jest bezpieczna do użycia w aplikacji. Wsutil.exe nie wykonuje żadnej weryfikacji autentyczności plików metadanych.
  • Wsutil generuje pliki nagłówków i wycinków, które nie są odporne na naruszenia. Należy ustawić odpowiednie prawa dostępu na poziomie dla plików źródłowych generowanych przez wsutil.exe, aby zapobiec nieautoryzowanemu dostępowi do tych plików. Wsutil używa system.IO.StreamWriter do tworzenia plików wyjściowych.
  • Użytkownicy muszą pamiętać, że program Wsutil może zastąpić swoje pliki lokalne i należy zachować ostrożność, aby określić bezpieczne nazwy plików i katalogi dla plików wyjściowych przy użyciu przełącznika /out.
  • Wsutil lub wsutilhelper.dll załadowany w wsutil.exe, może zakończyć się nieoczekiwanie lub zużywać dużą ilość zasobów systemowych w przypadku ataku lub przetwarzania bardzo dużej ilości metadanych wejściowych. Narzędzie jest przeznaczone do użycia tylko w czasie programowania To narzędzie powinno być używane tylko jako narzędzie czasu programowania. Przetwarzanie informacji o zasadach może nie być bezpieczne w warstwie środkowej.
  • Wsutilhelper.dll biblioteka DLL pomocnika jest ładowana do zarządzanego wsutil.exe w celu przetwarzania informacji o zasadach. Użytkownik powinien upewnić się, że w ścieżce binarnej nie istnieje złośliwy plik binarny o tej samej nazwie pliku. Podobnie użytkownik powinien upewnić się, że w środowisku kompilacji ścieżka binarna jest poprawnie skonfigurowana, że nie ma złośliwego pliku binarnego o tej samej nazwie "wsutil.exe".
  • Wsutil generuje adnotację SAL dla pól operacji i struktury, gdy jest to możliwe. Użytkownik wygenerowanych plików wsutil powinien przestrzegać wymagania określonego za pomocą adnotacji SAL.

Omówienie warstwy modelu usług

Serializacja

Narzędzie kompilatora usług internetowych

Obsługa języka WSDL

Obsługa schematu

Obsługa zasad