Digest Authentication

Digest authentication is a method of HTTP authentication that improves upon Basic authentication by providing a way to authenticate without having to transmit the password in clear text across the network.

This adapter allows authentication against text files containing lines having the basic elements of Digest authentication:

The above elements are separated by colons, as in the following example (in which the password is "somePassword"):

someUser:Some Realm:fde17b91c3a510ecbaf7dbd37f59d4f8

Specifics

The digest authentication adapter, Zend\Authentication\Adapter\Digest, requires several input parameters:

These parameters must be set prior to calling authenticate().

Identity

The digest authentication adapter returns a Zend\Authentication\Result object populated with the identity as an array containing the keys realm and username. The respective array values associated with these keys correspond to the values set before authenticate() is called.

use Zend\Authentication\Adapter\Digest as AuthAdapter;

$adapter = new AuthAdapter(
    $filename,
    $realm,
    $username,
    $password
);

$result = $adapter->authenticate();
$identity = $result->getIdentity();
print_r($identity);

/*
Array
(
    [realm] => Some Realm
    [username] => someUser
)
*/