Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Сеть > Проблема с авторизацией curl -> crm


Автор: Dionysius 25.9.2014, 10:23
Здравствуйте!

Суть в следующем. Есть скрипт, который делает запрос к CRM-системе по SOAP. Для этого используется nusoap, построенный на curl. Почему не используется нативный SOAP-клиент, точно не знаю (старое наследие), возможно, из-за NTLM-авторизации.

Описание проблемы: с CRM взаимодействуют две php-шные ноды, с одинаковым кодом и одинаковыми версиями curl: 7.22.0-3ubuntu4.10. Но, после аварии на одной ноде и восстановления, она стала работать только через basic-авторизацию (CURLAUTH_BASIC), вторая нода по-прежнему работает только через NTLM-авторизацию (CURLAUTH_NTLM). Причём в обоих случаях передаются одни и те же логин и пароль.

Вся соль в использовании строчки 
Код

curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
 в одном случае и 

Код

curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_NTLM);
 в другом.

Добавлено через 7 минут и 37 секунд
P.S. Самое важное забыл: 
в каждом нерабочем случае отправляется кривой заголовок, из которого почему-то пропадает пароль
Код

Authorization: Basic TEtFUk1Vc2VyOjEyM3F3ZSE=


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)