Ibrowse Erlang HTTP клиент прокси-аутентификации в домене - PullRequest
0 голосов
/ 24 января 2012

Мой Ibrowse HTTP Client находится за сетью, и любой HTTP-запрос извне должен проходить через прокси.Теперь у Ibrowse есть хороший пример для этого.Тем не менее, я немного запутался.Прокси-сервер, за которым я запускаю приложение, использует Domain Authentication (этот домен является Active Directory своего рода настройкой), в результате чего обычно в браузере мы должны вводить такие настройки (например, домен "kyaug"),

username: kyaug\[YOUR_DOMAIN_USERNAME]
password: [Domain Password]
Это означает, что [YOUR_DOMAIN_USERNAME] на самом деле является именем пользователя вашего домена.

Теперь в Ibrowse приведен пример, подобный следующему:
ibrowse:send_req("http://www.erlang.se/", [], get, [],
         [{proxy_user, "XXXXX"},
          {proxy_password, "XXXXX"},
          {proxy_host, "proxy"},
          {proxy_port, 8080}], 5000).
Теперь, давайте скажем, что моя ситуация выглядит следующим образом:
Domain:                kyaug
Domain Username:       muzaayj
Proxy Server:          ppi.kyu.co.ug
Proxy Port:            3128
Domain Password:       xxxxx            

Теперь, когда я попробую это ниже:

Options = [
            {proxy_user, "kyaug\muzaayj"},
            {proxy_password, "My Domain Password"},
            {proxy_host, "ppi.kyu.co.ug"},
            {proxy_port, 3128}
        ],<br>ibrowse:send_req("http://www.google.com",[],post,Data,Options,infinity).

Прокси-сервер высылает мне HTML-страницу, информирующую меня о PROXY_AUTH_REQUIRED и многом другом о его администраторах.Теперь я чувствую, что это потому, что я неправильно ставлю proxy_user.Выше я предоставляю этот параметр так, как его воспринимают браузеры, вероятно, за кулисами, он изменился в другое расположение.Кто-нибудь помогите, как я могу это исправить.Как браузеры отправляют свои данные на прокси-сервер для аутентификации, если имя пользователя необходимо добавить в домен, чтобы использовать его для аутентификации на стороне прокси?

Ответы [ 3 ]

1 голос
/ 26 января 2012

Вы пробовали {proxy_user, "muzaayj"} в настройках вместо {proxy_user, "kyaug\muzaayj"}?

1 голос
/ 26 января 2012

Вы пробовали {proxy_user, "kyaug\\muzaayj"}? Один обратный слеш экранирует m обратно до m, но двойной обратный слеш становится одиночным обратным слешем в строке.

0 голосов
/ 24 января 2012

Я не знаком с ibrowse, но я думаю, что проблема в методе аутентификации Windows (ofc, это зависит от конфигурации AD, но я подозреваю, что это NTLM Auth), которую ibrowse не поддерживает.

...