Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class WsseAuthHeader extends SoapHeader
- {
- private $wss_ns = 'http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd';
- function __construct($user, $pass, $ns = null)
- {
- if ($ns)
- {
- $this->wss_ns = $ns;
- }
- $auth = new stdClass();
- $auth->Username = new SoapVar($user, XSD_STRING, NULL, $this->wss_ns, NULL, $this->wss_ns);
- $auth->Password = new SoapVar($pass, XSD_STRING, NULL, $this->wss_ns, NULL, $this->wss_ns);
- $username_token = new stdClass();
- $username_token->UsernameToken = new SoapVar($auth, SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'UsernameToken', $this->wss_ns);
- $security_sv = new SoapVar(
- new SoapVar($username_token, SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'UsernameToken', $this->wss_ns),
- SOAP_ENC_OBJECT, NULL, $this->wss_ns, 'Security', $this->wss_ns);
- parent::__construct($this->wss_ns, 'Security', $security_sv, true);
- }
- }
- try
- {
- $options = array(
- 'soap_version' => SOAP_1_2,
- 'exceptions' => true,
- 'trace' => true,
- 'wdsl_local_copy' => true,
- );
- $username = "User";
- $password = "Password";
- $wsse_header = new WsseAuthHeader($username, $password);
- $endPointURI = "https://localhost:88776/SoapTEST/services/securityservice.svc?wsdl";
- $client = new SoapClient($endPointURI, $options);
- $client->__setSoapHeaders(array($wsse_header));
- print_r($client->__getFunctions());
- $retval = $client->GetDocuments();
- print_r($retval);
- }
- catch(Exception $e)
- {
- echo "<h2>Exception Error!</h2></b>";
- echo $e->getMessage();
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement