2010-04-22 15 views
12

Mamy usługi OSB, które są obecnie zabezpieczone nazwą użytkownika i hasłem. Dostaję 401 nieautoryzowane przy próbie wygenerowania proxy usługi przy użyciu svcutil. Wiem, że musisz skonfigurować plik svcutil.exe.config, ale nie mogę znaleźć żadnych przykładów poza tym, który przekazuje certyfikat.Przekazywanie nazwy użytkownika i hasła do svcutil.exe?

Dows ktoś wie, jak wysłać nazwę użytkownika i hasło za pomocą svcutil?

Odpowiedz

10

Nie sądzę, że możesz to zrobić.

W tym przypadku można połączyć się z tym adresem w przeglądarce i po prostu pobrać i zapisać plik WSDL na dysku lokalnym i zadzwonić pod numer svcutil.exe tej lokalnej kopii - lub poprosić wydawcy tej usługi internetowej o podanie masz adres URL, który nie wymaga uwierzytelnienia lub po prostu przesyłasz odpowiednie pliki WSDL i ewentualnie XSD, aby można było utworzyć serwer proxy po stronie klienta dla tej usługi.

+0

mam sprawdzanie co mówisz tutaj: http://msdn.microsoft.com/en-us/library/ms733775.aspx Uwaga: Nie można użyć konfiguracji aby ustawić nazwę użytkownika i hasło. Pokazana tutaj konfiguracja musi zostać rozszerzona za pomocą kodu, aby ustawić nazwę użytkownika i hasło. – webwires

9

Nie można uwierzytelnić w svcutil, ale można skonfigurować poświadczenia w systemie Windows dla komputera docelowego. Przejdź do strony zarządzania kontem, a następnie do swoich zapisanych poświadczeń. Dodaj nowy wpis z docelową nazwą hosta i poświadczeniami. Następnie możesz użyć svcutil z adresem URL.

+0

To działa! Bardzo mądry. Dzięki. Jednak, w praktyce, polecam OP tylko pobrać WSDL! Twój kod jest w każdym razie sprzężony z interfejsem usługi. Jeśli interfejs usługi ulegnie zmianie, mały ręczny krok aktualizacji pliku wsdl będzie banalny w porównaniu do modyfikowania lub testowania kodu w związku z faktycznymi zmianami w interfejsie usługi. Ręczna aktualizacja WSDL daje kontrolę nad tym, kiedy to się dzieje. WSDL jest umową, strona konsumująca powinna być świadoma, kiedy się ona zmieni. – DanO

-2

Spróbuj tego. Powinno to działać z każdą stroną internetową wymagającą nazwy użytkownika i hasła.

svcutil http://user:[email protected]?wsdl 
+0

Próbowałem tego formatu z osadzoną nazwą użytkownika i hasłem w adresie URL, ale nie działało. –