Edit report at https://bugs.php.net/bug.php?id=47761&edit=1

 ID:                 47761
 Comment by:         clockw...@php.net
 Reported by:        marques at displague dot com
 Summary:            Since 5.2.9 SoapClient no longer attempts Basic auth
                     to retrieve a WSDL file
 Status:             No Feedback
 Type:               Bug
 Package:            SOAP related
 Operating System:   *
 PHP Version:        5.2.9
 Block user comment: N
 Private report:     N

 New Comment:

$ php -v
PHP 5.2.17-0.dotdeb.0 with Suhosin-Patch 0.9.7 (cli) (built: Jan  7 2011 
07:47:48)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2010 Zend Technologies

Doing:

<?php
$wsdl = ...;

$soapOptions = array(
    'login' => '...',
    'password' => '...',
    'trace' => 1,
    'exceptions' => true,
);
$code_table_client = new RPDesktopCodeTableSoapClient(new SoapClient($wsdl, 
$soapOptions));

The basic auth works for the initial connection, but other components of the 
WSDL that are being referred to don't load the credentials.


Previous Comments:
------------------------------------------------------------------------
[2009-10-07 01:00:00] php-bugs at lists dot php dot net

No feedback was provided for this bug for over a week, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".

------------------------------------------------------------------------
[2009-09-29 11:20:40] sjo...@php.net

Thank you for your bug report.

How did you try to pass the username and password to the SOAP client? Please 
try putting them in the URL, like this:
http://user:p...@www.example.com/service.wsdl

------------------------------------------------------------------------
[2009-08-07 03:52:10] marques at displague dot com

One scenario, you are making your own SOAP Server service.  It is  more 
difficult to write a digest auth server than it is to write a basic auth 
server.  Again, consider that PHP web requests are all made as HTTP/1.0 because 
Chunk decoding is not handled properly (or at all) and so Digest, which is 
HTTP/1.1 specific is technically not an option without a good deal of custom 
coding.

Aside from that, I imagine there are just some HTTP/1.0 or Basic only servers 
out there.

------------------------------------------------------------------------
[2009-08-06 22:02:12] sriram dot natarajan at gmail dot com

why is there still a need to support basic authentication ? can u kindly 
explain that scenario ?

------------------------------------------------------------------------
[2009-03-24 13:53:48] marques at displague dot com

Description:
------------
Since 5.2.9, SoapClient no longer attempts HTTP Basic authentication to 
retrieve a wsdl file.

Prior to this version Basic was attempted and Digest was not.  Digest should 
also be attempted but that is a matter for another bug.  The SoapClient option 
'authentication' has no effect on wsdl retrieval.

A work-around is to fetch the WSDL file manually or via PHP commands within the 
SOAP code, but that method can be cumbersome because digest auth code has to be 
written from scratch and Bug #47759 (chunk encoding) can get in the way.




------------------------------------------------------------------------



-- 
Edit this bug report at https://bugs.php.net/bug.php?id=47761&edit=1

Reply via email to