Próbuję skonstruować usługę WWW Glassfish hostowaną, która podszywa się pod usługę hostowaną przez WCF (do testowania rozwoju). Mam WSDL z usługi hostowanej WCF i mogę utworzyć usługę Java i klienta Java z WSDL hostowane WCF bez żadnych problemów. WSDL używa protokołu Mutual Certificate Security do wymiany danych.Problemy z podszywaniem się pod bezpieczny serwer WWW WCF za pomocą Glassfish/Metro
Plik WSDL ma osadzony certyfikat X509, który jest zgodny z certyfikatem hosta serwera WCF.
Kiedy próbuję podłączyć mojego klienta Java do usługi Java obsługiwanej przez Glassfish, otrzymuję - oczywiście - błędy certyfikatu.
Co mogę zrobić, aby to zadziałało? Zakładam, że:
A) Muszę zastąpić ciąg certyfikatu X509 w WSDL zawartością samopodpisanego certyfikatu Glassfish 's1as' utworzonego podczas instalacji Glassfish.
B) Ustaw parametry SSL serwera Glassfish dla serwera Konfiguracja sieciowa, aby używać domyślnych magazynów certyfikatów cacerts.jks i keystore.jks dostarczonych wraz z instalacją Glassfish. Mimo że nie używam tutaj protokołu SSL, zakładam, że serwer musi wiedzieć, gdzie jego magazyn zaufanych certyfikatów i magazyn kluczy ma wykonywać zabezpieczenia wzajemnego certyfikatu przez HTTP.
C) Dodaj certyfikat serwera "s1as" do magazynu zaufanych certyfikatów dla klienta Java.
D) Dodaj certyfikat, którego wcześniej używałam dla oryginalnego klienta podłączającego WCF do magazynu kluczy dla serwera Glassfish. (Nie jestem pewien na tym?)
Czy jest tu coś, czego mi brakuje? Każda pomoc będzie mile widziana.
Czy używasz zabezpieczeń SSL lub Message layer (zabezpieczenia WS)? Dlaczego symulujesz usługę i nie używasz rzeczywistej usługi WCF? – Tomer