Potrzebuję spożywać reszta usług internetowych z java, przekazując poświadczenia konta użytkownika domeny.uwierzytelnianie za pomocą ntlm (lub Kerberos) przy użyciu java UrlConnection
teraz robię to z klasycznymi asp
set xmlHttp = server.createObject("msxml2.serverxmlhttp")
xmlHttp.open method, url, false, domain & "\" & user, password
xmlHttp.send body
out = xmlHttp.responseText
set xmlHttp = nothing
i z ASP.NET
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(url);
request.Credentials = new NetworkCredential(user, password, domain);
request.Method = WebRequestMethods.Http.Get
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
StreamReader outStream = new StreamReader(response.GetResponseStream(), Encoding.UTF8) ;
output = outStream.ReadToEnd();
w jaki sposób można to osiągnąć z java? Weź pod uwagę, że nie korzystam z poświadczeń aktualnie zalogowanego użytkownika, określam konto domeny (mam hasło)
proszę mi powiedzieć, że to tak proste, jak z klasycznym asp i asp.net .. ..
Hej Matt, dziękuję za odpowiedź, ale zastanawiam się, czy to możliwe, aby to zrobić, z techni-w zajęciach JRE za pomocą protokołu Kerberos zamiast NTLM .. Chodzi mi o to, że Kerberos nie jest pptopietary jak NTLM ... – opensas
Ostatnio słyszałem, że klient Apache NIE obsługuje NTLMv2. I niechętnie sięgają do JCIFS, ponieważ a) twierdzą, że LGPLv2 nie jest zgodny z ich licencją i b) są ogólnie znużeni materiałami MS. Ale to nie ma znaczenia, ponieważ jeśli chcesz współdziałać z firmą Microsoft, NTLM jest wspólnym mianownikiem mechanizmów uwierzytelniania.Kerberos nie działa, jeśli klient nie ma dostępu do kontrolera domeny lub jeśli synchronizacja czasu jest wyłączona lub jeśli DNS nie jest całkiem poprawny lub ... itd. – user8134
Witaj ioplex. Nie jestem pewien, gdzie to usłyszałeś, ale jest niepoprawny. Sprawdź dokumenty, z którymi się łączyłem. Z powodzeniem użyłem NTLM zarówno z HttpClient 3.x, jak iz 4.0. –