HTTP autorisace v .htaccess
Jak souborem .htaccess
jednoduše omezit přístup na stránku heslem.
Je-li cílem omezit přístup na stránku pouze pro uživatele, kteří znají jméno a heslo, existuje řada způsobů:
- Naprogramovat si přihlašování na straně serveru.
- Vytvořit stránku na tajné URL. (Zde je velmi snadné vyzrazení.)
- Použít autorisaci na straně serveru.
Webový server Apache nabízí poměrně snadný způsob, jak primitivním způsobem stránku zaheslovat.
Jde využít HTTP autorisace, která v prohlížeči vyvolá speciální formulář, takže se ani není potřeba obtěžovat s vytvářením vlastního.
Příklad
.htaccess
V souboru .htaccess
umístěném ve složce, kam se má omezit přístup, bude následující:
AuthType Basic
AuthName "Název autorisace"
AuthUserFile "/cesta/k/souboru/.htpasswd"
Require valid-user
Cesta k souboru .htpasswd
musí být absolutní (plná), nikoliv relativní (doplnil Čech ve Vietnamu).
Za zmínku stojí soubor .htpasswd
, kde jsou uložena přihlašovací data:
.htpasswd
Soubor .htpasswd
vypadá symbolicky takto:
jmeno:heslo
Heslo je nutné hashovat. Stačí k tomu použít nějaký online nástroj:
Problémy v prohlížečích
Některé prohlížeče nemají rozhraní pro přihlášení, takže se z nich do webů zaheslovaných pomocí .htaccess
vůbec nejde dostat.
To je případ například mobilního MS Edge. V některých případech (třeba na iPadu) jde autorisací projít zadáním „jmeno:heslo@
“ před doménu.
Použití tohoto způsobu zaheslování je proto spíš nouzové řešení.
Odkazy jinam
- Apache HTTP Server: Authentication and Authorization
Komentáře