Ошибка авторизации TIdHTTP через HTTPS

Я хочу обратиться к веб-серверу Exchange и самостоятельно обрабатывать состав XML SOAP (запрос) и анализ (ответ). Поэтому THTPPRIO кажется немного излишним.

я пробую TIdHTTP, но язастрял на аутентификации; использование Delphi XE2 update 4 с Indy 10.5.8.0

Вот's код:

idHTTP1.Request.CustomHeaders.AddValue('SOAPAction','"http://schemas.microsoft.com/exchange/services/2006/messages/ResolveNames"');
IdHTTP1.Post('https://webmail.mailserver.nl/ews/exchange.asmx',TSRequest,TSResponse);
TSRequest, TSResponse - это UtF-8 TStringStreams, TSRequest содержит весь конверт SOAPIdHTTP1.IOHandler установлен в TIdSSLIOHandlerSocketOpenSSL, в соответствии сэтот совет TIdSSLIOHandlerSocketOpenSSL.Intercept связан с TIdLogDebug, так что я могу отлаживать чтопродолжаетсяOpenSSL DLL присутствуют в пути поиска DLLEWS хочет подтверждение NTLM; TIdNTLMAuthentication находится в пункте использования; Я установил idHTTP1.Request.BasicAuthentication = false, имя пользователя и пароль заполненыСобытие IdHTTP1.OnSelectAuthorization подтверждает аутентификацию NTLM (параметры AuthenticationClass = TIdSSPINTLMAuthentication, а AuthInfo TIdHeaderList содержит 'Вести переговоры ','NTLM ")Там нет прокси. Я прокси черезобманщик чтобы увидеть, что'происходит, но это не имеет значения.

Я также попытался установить время выполнения пользователя / PW:

procedure TForm1.IdHTTP1Authorization(Sender: TObject; Authentication: TIdAuthentication; var Handled: Boolean);
begin
  Authentication.Username := '[email protected]';
  Authentication.Password := 'password';
  Handled := true;
end;

Отправленный HTTP (из TIdLogDebug.OnSend) начинается с:

POST /ews/exchange.asmx HTTP/1.1
Content-Type: text/xml; charset=utf-8
Content-Length: 562
SOAPAction: "http://schemas.microsoft.com/exchange/services/2006/messages/ResolveNames"
Host: webmail.mailserver.nl
Accept: text/html, */*
Accept-Encoding: gzip,deflate, identity
User-Agent: Mozilla/3.0 (compatible; Indy Library)


> "POST /ews/exchange.asmx HTTP/1.1[\r][\n]"
>> "Accept-Encoding: gzip,deflate[\r][\n]"
>> "SOAPAction: "http://schemas.microsoft.com/exchange/services/2006/messages/ResolveNames"[\r][\n]"
>> "Content-Type: text/xml; charset=utf-8[\r][\n]"
>> "Content-Length: 548[\r][\n]"
>> "Host: webmail.timetellbv.nl[\r][\n]"
>> "Connection: Keep-Alive[\r][\n]"
>> "User-Agent: Apache-HttpClient/4.1.1 (java 1.5)[\r][\n]"
>> "[\r][\n]"
>> "

Ответы на вопрос(1)

Ваш ответ на вопрос