Obtener autenticación usuario y contraseña del navegador

Código PHP

PHP – Server – Obtener usuario y contraseña del navegador

Función que devuelve el usuario y contraseña del diálogo de autenticación del navegador.

Los valores se envian mediante la variable superglobal $_SERVER en los parámetros PHP_AUTH_SERVER y PHP_AUTH_PW.

/**
 * Class HelperServer
 */
abstract class HelperServer
{
    /**
     * Devuelve el usuario y contraseña procedentes del 
     * diálogo de autenticación del navegador.
     * $_SERVER['PHP_AUTH_USER'] y $_SERVER['PHP_AUTH_PW']
     *
     * @param string $usuario
     * @param string $psw
     */
    public static function getAutenticacion(&$usuario, &$psw)
    {
        $usuario = HelperServer::getValue('PHP_AUTH_USER');

        $psw = HelperServer::getValue('PHP_AUTH_PW');
    }
}

Funciones relacionadas:

Ejemplo:

$valid_passwords = array( "demo" => "pass" );
$valid_users     = array_keys( $valid_passwords );

$usuario = $pass = '';

// Recuperamos el usuario y la contraseña (si existen)
HelperServer::getAutenticacion( $usuario, $pass );

$validated = ( in_array( $usuario, $valid_users ) ) &&
             ( $pass == $valid_passwords[ $usuario ] );

if (!$validated) {

    header_autenticacion('www.domain.com');

    // Hemos de finalizar ya que no esta autenticado
    die ( "Sin autorización" );
}

// En este punto el usuario es válido
echo "Hola $usuario.";
echo "Su contraseña es correcta";