PHP SOAP uzantısı ile SSL bağlantısını almak nasıl?

0 Cevap php

Windows'un Ben SoapFault alıyorum PHP SOAP uzantısı ile bir SSL bitiş noktasına bağlanmaya çalışırken "ana bilgisayara bağlanmak olamazdı". İstemci sertifikası hizmetin bir gereklilik değildir.

$sslOptions = array(
    'ssl' => array(
        'cafile' => "c:/inetpub/wwwroot/eServices/Server_DSA_Public_Certificate.pem",
        'allow_self_signed' => true,
        'verify_peer' => false,
     ),
);      
$sslContext = stream_context_create($sslOptions);

$clientArguments = array(
    'stream_context' => $sslContext,
    'trace' => true,
    'exceptions' => true,           
    'encoding' => 'UTF-8',
    'soap_version' => SOAP_1_1,
);

$oClient = new WSSoapClient("c:/inetpub/wwwroot/eServices/svc.wsdl", $clientArguments);  
// WSSoapClient extends SoapClient to add a WS-Security UsernameToken header    

$oClient->__setUsernameToken("myusername", "mypassword");   
return $oClient->__soapCall($operation, $request);

Ben dönüştürülür. Pem ben verildi ve 'cacert' olarak şöyle geçirerek kendinden imzalı sunucu sertifikası (. Cer) biçimlendirmek.

Mükemmel aynı wsdl ile SoapUI kullanarak hizmete erişmek mümkün duyuyorum.

Soru: Bazı güven deposuna sunucu sertifikasını koymak gerekir mi? Ben zaten 'Güvenilir Kök Sertifika Yetkilileri' içine eklemek için Internet Explorer'ı kullanabilirsiniz etmedi.

Soru: 'cacert' geçen ederek, PHP sunucu güvenebilirsiniz bilmek için yeterli mi?

Herhangi bir yardım veya öneriler çok duyacağız.

0 Cevap