HttpAuthExtension aneb HTTP autentizace přes config
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- uestla
- Backer | 799
HttpAuthExtension
Ahoj.
Rád bych představil jednoduchou extenzi configu,
která umí primitivním způsobem zajistit HTTP autentizaci.
Použití
bootstrap.php
HttpAuthExtension::register( $configurator );
config.neon
httpAuth:
username: admin
password: ***
Využití
Může se hodit, když chceme klientovi ukázat web
v ostrém prostředí a ochránit ho touto cestou.
Navíc můžeme definici vložit do production
sekce
configu, čímž nás nebude obtěžovat ve vývojovém
prostředí…
Enjoy.
Editoval uestla (4. 11. 2012 0:31)
- uestla
- Backer | 799
Využití extenze bylo zamýšleno globálně na celou aplikaci.
Nicméně: extenze využít nemusíš, ale můžeš použít čistě
HttpAuthenticator
jako službu (budu psát z paty, takže se
omlouvám za případné chyby):
parameters:
httpAuth:
username: admin
password: ***
title: '...'
services:
- HttpAuthExtension\HttpAuthenticator( ..., %httpAuth.username%, %httpAuth.password%, %httpAuth.title% )
V BasePresenter
u BackendModulu pak můžeš mít
abstract class BasePresenter extends UI\Presenter
{
private $httpAuthenticator;
function __construct(HttpAuthExtension\HttpAuthenticator $a)
{
$this->httpAuthenticator = $a;
}
protected function startup()
{
parent::startup();
$this->httpAuthenticator->run();
}
}
Pokud to ale chceš používat ve smyslu ochrany přístupu do backoffice webu, tak to silně nedoporučuji, použij klasičtější cestu.