2012-08-27 29 views
7

Necesito usar node.js para comunicarme con un servidor usando la autenticación proxy NTLM.Autenticación NTLM usando node.js

que han usado 2 módulos:

  1. nodo-enrollamiento https://github.com/jiangmiao/node-curl
  2. solicitud, viniendo muy recomendable htps://github.com/mikeal/request

he encontrado ninguna documentación para el módulo de solicitud de NTLM, y aunque nodo -curl admite las opciones de curl easy, no encontré documentación sobre cómo especificar el CURLAUTH_NTLM para CURLOPT_HTTPAUTH.

Quiero saber cómo cuidar la autenticación del proxy NTLM. Me encantaría seguir usando el módulo de solicitud.

+1

Véase también [esta cuestión] (http://stackoverflow.com/questions/5541099/ node-js-ntlm-http-authentication-how-to-handle-the-the-3-types). No creo que haya ningún soporte para NTLM en la solicitud o en ningún módulo de nodos, por lo que su mejor opción parece ser ['spawn'] (http://nodejs.org/api/child_process.html#child_process_child_process_spawn_command_args_options) a' curl --proxy-ntlm' proceso. –

Respuesta

1

¿Es importante que utilice NTLM directamente en el código node.js?

En su lugar, puede intentar instalar algunos proxies intermedios NTLM que le darán la oportunidad de usar un proxy HTTP simple en node.js. Hay al menos dos soluciones para ello:

  1. Cntlm - escrito en C
  2. ntlmaps - escrito en Python
0

Aquí es una aplicación parcial del lado del servidor de NTLM en Node.js . Puede ayudar con el desarrollo de una solicitud del lado del cliente: https://gist.github.com/3049352

Y aquí hay algún código que parece generar el mensaje de tipo 1 y recibir la respuesta de tipo 2. El mensaje de tipo 3 aún no está implementado y es el paso final: github.com/kevinswiber/node-ntlm-client

Aquí hay alguna documentación sobre el protocolo NTLM que debe ayudar a completarlo: http://www.innovation.ch/personal/ronald/ntlm.html

Es una comienzo.

+0

Eso realmente no es un ejemplo del lado del servidor de NTLM. Como dice la esencia, es completamente falso. –

Cuestiones relacionadas