Как включить аутентификацию Kerberos в Java-клиенте, использующем сервис .NET WCF - PullRequest
0 голосов
/ 11 марта 2019

Я могу использовать службу WCF с проверкой подлинности Kerberos, установив обезличенные и учетные данные клиента с помощью запроса прокси службы.

Можно ли это сделать на Java?

Есть ли для этого библиотеки Java?

1 Ответ

0 голосов
/ 12 марта 2019

Включить проверку подлинности Kerberos на стороне сервера, а не на стороне клиента.

WSHttpBinding binding = new WSHttpBinding();
        binding.Security.Mode = SecurityMode.Message;
        binding.Security.Message.ClientCredentialType = MessageCredentialType.Windows;

Мы устанавливаем учетные данные Kerberos на стороне клиента, что обычно выполняется прокси-классом клиента.

ServiceReference1.ServiceClient client = new ServiceReference1.ServiceClient();
        client.ClientCredentials.Windows.ClientCredential.Domain = "mydomain";
        client.ClientCredentials.Windows.ClientCredential.UserName = "administrator";
        client.ClientCredentials.Windows.ClientCredential.Password = "123456";

Что касается того, как создать прокси в Java.Вот несколько решений.В шаблонах проектов Eclipse есть шаблон проекта клиента веб-службы, который может генерировать прокси-класс клиента с WSDL, предоставляемым WCF, например, Добавление ссылки на службу в C #.
http://wiki.eclipse.org/Creating_a_Java_Web_Service_Client
https://docs.microsoft.com/en-us/dotnet/framework/wcf/accessing-services-using-a-wcf-client?view=netframework-4.7.2
Также существует WsimportИнструмент .exe в Java JDK, как и инструмент SVCUTIL.EXE в .Net, который может генерировать прокси с помощью командной оболочки.
https://docs.oracle.com/javase/7/docs/technotes/tools/share/wsimport.html
https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-3.5/aa347733(v=vs.90)
Существуют также сторонние библиотеки, такие как Axis2.
http://axis.apache.org/axis2/java/core/download.cgi
Наконец, вы даже можете создавать и отправлять запросы get / post через класс HttpClient для вызова службы.
Не стесняйтесь обращаться ко мне, если есть что-то, с чем я могу помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...