2010-12-03 11 views
8

Estoy trabajando en una biblioteca para comunicarme con Microsoft Exchange utilizando PHP. Todo funciona bien en mis servidores de producción, pero sigo obteniendo un 401 no autorizado en mi máquina de desarrollo. Intenté usar Curl desde la línea de comandos y obtuve los mismos resultados.cURL siempre devuelve 401 con NTLM

Usando las siguientes declaraciones de "401" en mi máquina:

curl https://mail.example.com/EWS/Exchange.asmx -w %{http_code} --ntlm -u username:password 

Las mismas exactas devuelve la llamada "302" en mis máquinas de producción, que es lo que espero.

Mi máquina de desarrollo usa curl 7.19.7 y mi máquina de producción usa curl 7.18.0.

+0

esto se parece a una pregunta más adecuado para uno de los otros sitios .. – zanlok

Respuesta

7

Esta es una vieja pregunta, pero si finalmente puede ayudar a alguien, pensé en publicar una respuesta.

Hay un error con NTLM y curl en cierta versión reciente de Ubuntu (10.04 y superior, creo).

Si está utilizando el módulo de rizo de PHP en Ubuntu y su versión libcurl se ve afectada por este error, esto podría explicar por qué sus solicitudes de autenticación estan fallando

Si se agrega la bandera detallado a su comando (-v), debería ver algo como esto en la parte de la respuesta:

  • gss_init_sec_context() falló:: Credenciales archivo de caché '/ tmp/krb5cc_1000' no encontrado

Si ve esto, se ve afectado por el error y tendrá que degradar su biblioteca o buscar otra máquina.

Espero que esto ayude: P

+0

Recientemente encontré este informe de error, realmente debería haberlo actualizado aquí para reflejarlo. Como referencia, aquí es donde originalmente me encontré con el problema: https://github.com/jamesiarmes/php-ews/issues/11. – JamesArmes

+0

Esto también se confirma con CentOS 6.4: https://bugzilla.redhat.com/show_bug.cgi?id=799557 (Sé que el título del error hace que parezca que no está relacionado, pero este es el mismo error) – Johann

0

para todos los usuarios Centos/RHEL 6.x eche un vistazo en:

https://bugzilla.redhat.com/show_bug.cgi?id=953864

+0

Sé que el enlace da indicaciones para una respuesta, pero las respuestas basadas en enlaces se vuelven obsoletas si el enlace no funciona. ¿Podría considerar resumir qué dice el enlace que proporcionó en su respuesta? – Nunser

+0

Hay un error dentro de curl que pervirtió la autenticación. En la bugzilla hay un parche disponible. Se incluirá en centos/rhel 6.5. –

Cuestiones relacionadas