A decoupled, interface-based authentication component for PHP 5.4