7.2 Využití nástrojů WWW serveru
V případě využití nástrojů WWW serveru můžeme využít dva přístupy: Basic a Digest. Oba přístupy jsou pěkně popsány na http://www.unixpapa.com/auth/index.html. Pro další čtení je nutné pročíst první kapitolu odkazovaného dokumentu. Poznámka: U WWW serveru MS IIS se můžete setkat rovněž s přístupem Integrated Windows Autentication. Tento přístup využívá databázi uživatelů z OS W2KS (WNTS, W2003S) resp. z ActiveDirectory serveru. Tento typ není podporován specifikací HTTP a proto funguje jen na omezeném počtu klientů (resp. na MSIE). Basic autentizace není příliš bezpečná, proto se nedoporučuje používat pro operace nad citlivými daty. Digest autentizaci provází nekompatibilita WWW serverů a WWW prohlížečů. V zásadě jsou z tohoto problému pouze dvě cesty. Buďto zabezpečená komunikace (probíraná v kapitole 8) ve spojení s Basic metodou autentizace nebo vlastní řešení (obvykle také v kombinaci se zabezpečenou komunikací). Přesto, předtím než se budeme věnovat vlastní implementaci, se v následujícím textu podíváme jak se řeší Basic autentizace v prostředí WWW serveru Apache. |
HTTP specifikace (nástroje WWW serveru) |
Podrobné informace o Basic metodě pro Apache najdete na http://httpd.apache.org/docs-2.0/howto/auth.html. K tomu aby bylo možné nastavit Basic autentizaci v prostředí WWW serveru Apache postupovat následujícím způsobem:
|
Basic autentication |
K vytvoření databáze uživatelů se využívá program htpasswd, který je kompilován spolu s apache.
htpasswd -c /usr/local/apache/passwd/passwords jencek Příkaz vytváří novou databázi (soubor) uživatelů a přidává do něj uživatele jencek. Následně je vyžádáno heslo pro uživatele.
New password: mypassword Re-type new password: mypassword Adding password for user jencek Další uživatelé se přidávají pomocí stejného programu jen se vypouští přepínač -c. |
Vytvoření databáze uživatelů |
K vytvoření databáze skupin se využívá textový editor. Struktura souboru se skupinami je následující:
GroupName: username username username Př. gis: jencek michal pavel igi: lojza, karel, marek |
Vytvoření databáze skupin |
Sekce Directory zvoleného adresáře se doplní následujícím (nebo podobným kódem):
AuthType Basic AuthName "By Invitation Only" AuthUserFile /usr/local/apache/passwd/passwords AuthGroupFile /usr/local/apache/passwd/groups Require user jencek Require group gis Direktiva AuthType udává typ (Basic, Digest). Direktiva AuthName udává pojmenování komunikace (uvedený text se objeví na přihlašovacím okně). Direktiva AuthUserFile udává cestu a název souboru s hesly (vytvořený v prvním kroku). Direktiva AuthGroupFile udává cestu a název souboru se skupinami (vytvořený ve druhém kroku). Direktiva AuthGroupFile nemusí být uvedena. Direktiva Require může mít tři tvary:
|
Konfigurace adresáře |
KORESPONDENČNÍ ÚKOL 10 |
|
|
Nakonfigurujte WWW server tak aby měli do virtuálního adresáře gis přístup všichni uživatelé ze skupiny gisaci a také uživatel pepa. Uživateli pepa a nikomu jinému umožňete přístp do virtuálního adresáře pepa a všem uživatelům v databázi umožňete přístup do adresáře publicforusers. Konfiguraci zašlete k posouzení tutorovi. |
Přístup |
SAMOSTATNÝ ÚKOL 19 |
|
|||||||||||||
Doplňte následující tabulku týkající se kompatibility klientů a serverů v oblasti medoty Digest.
|
|