W tym miejscu pojawia się problem z wsdls i wyborem wielu certyfikatów w java. Na przykład karta inteligentna ma wiele certyfikatów do podpisu, szyfrowania, identyfikacji. Mam WSDL, który generuje kod dla połączenia klient auth ale o ile mogę powiedzieć, dajesz WSDL ścieżkę do magazynu kluczy przez ustawienie właściwości, jak toWSDL Client Auth i wiele certyfikatów
System.setProperty("javax.net.ssl.keyStore",
keyStore);
System.setProperty("javax.net.ssl.keyStorePassword",
keyStorePassword);
Obserwuję tę tutorial . Teraz, dla wielu certyfikatów w magazynie kluczy, jak na karcie inteligentnej, stanowi to problem, ponieważ nie ma sposobu na określenie WSZYSTKIEGO certyfikatu, którego chcesz użyć na tej karcie inteligentnej. Wygląda na to, że wsdl wybiera pierwszy certyfikat w magazynie kluczy, który może być niewłaściwym certyfikatem do uwierzytelnienia.
Moje pytanie jest 2-krotnie:
Czy istnieje inny sposób niż robi
System.setProperty
powiedzieć WSDL, który certyfikat w użyciu? Co mogę zrobić, aby określić, który certyfikat, ponieważ większość kodu jest generowana przez wsdl przy użyciuwsconsume
?Tylko
System.setProperty()
pozwala określić ścieżkę. Czy istnieje sposób na określenie obiektu? Sposób, w jaki otrzymuję certyfikaty poza kartą inteligentną, to użycie klasy SunPKCS11 (jak stwierdzono here). Jednak to zwraca mi obiekt magazynu kluczy, i o ile wiem,System.setProperty()
chce ścieżki.
Dzięki za pomoc!