jamesiarmes / php-ntlm

NTLM authentication library for PHP.
MIT License
54 stars 27 forks source link

PHP NTLM

The PHP NTLM library (php-ntlm) is intended to provide various methods to aid in communicating with Microsoft services that utilize NTLM authentication from within PHP.

Scrutinizer Total Downloads

Dependencies

Installation

The preferred installation method is via Composer, which will automatically handle autoloading of classes.

{
    "require": {
        "jamesiarmes/php-ntlm": "~1.0"
    }
}

Usage

SoapClient

The \jamesiarmes\PhpNtlm\SoapClient class extends PHP's built in SoapClient class and can be used in the same manner with a few minor changes.

  1. The constructor accepts a required 'user' and 'password' index in the $options array.
  2. The constructor accepts an optional 'curlopts' index in the $options array that can be used to set or override the default curl options.

Basic example:

$client = new SoapClient(
    $wsdl,
    array('user' => 'username', 'password' => '12345')
);

Example that skips SSL certificate validation:

$client = new SoapClient(
    $wsdl,
    array(
        'user' => 'username',
        'password' => '12345',
        'curlopts' => array(CURLOPT_SSL_VERIFYPEER => false),
    )
);

Available options

The basic options available on the constructor can be found at http://php.net/manual/en/soapclient.soapclient.php. The trace option is not necessary, as the last request and response methods will always be available. In addition to these options, the following additional options are available:

Projects that use php-ntlm

The following is a list of known projects that use this library. If you would like to add your project to the list, please open a pull request to update this document.