Konfigurálása hitelesítés sabredav

Miután létrehozta a WebDAV szerver, akkor valószínűleg szeretnénk, hogy ez biztonságos. WebDAV hitelesítés alkalmazásával végezzük bázis vagy daydzhest- HTTP-hitelesítés (RFC2617). Bár ez könnyen megvalósítható a saját, SabreDAV eszközöket biztosít, amely megkönnyíti a munkát.

SabreDAV jön egy plug-in, amely végrehajtja a hitelesítést az Ön számára. Ez magában foglalja a két kezelőt. Egy felhasználó bejelentkezését egy fájlt, a másik -, hogy tárolja azokat a SQLite vagy MySQL. Mind a HTTP protokoll alapú kivonatot. Ha azt szeretnénk, hogy az egyszerű hitelesítést, akkor létre kell hozni a saját osztálya a háttér Of valósítja Sabre \ DAV \ Auth \ háttér \ BackendInterface.

Használata backend OEM

PDO backend MySQL SQLite adatbázis csak. Példák a táblák, megtalálja a forráskód a példákban / sql könyvtárban:

Miután a példány Sabre \ DAV \ Server. köztük a fent plugint az alábbi kódot:

TABLE SQL

A szkriptek a példák SQL automatikusan létrehoz egy felhasználót a felhasználónév admin, a jelszó admin. Változtassa meg!

Akkor megzavarja területén digesta1. Ez tárolja a hash a jelszó. Ez a hash a következőképpen számítjuk ki:

A felhasználónév és jelszó, minden világos, de rajtuk kívül meg kell tárolni valahol birodalmába. Ez ugyanaz a birodalomban. amely korábban megadott létrehozásakor Saber \ DAV \ Auth \ Plugin.

Ha meg akarjuk változtatni a birodalom a plugin, minden meglévő jelszavakat érvénytelenné válik, mert megváltoztatja a hash-eket.

A fájl backend

Háttér Sabre \ DAV \ Auth \ háttér \ fájl egy egyszerű fájl tárolja a felhasználói neveket és jelszavakat. A formátum megegyezik htdigest által használt fájlok Apache.

Ha már telepítve van az Apache, akkor a legvalószínűbb, hogy van egy eszköz létrehozására és módosítására ezeket a fájlokat. Meg tudja nézni ezt írja a parancssorba htdigest.

De még ha htdigest nincs telepítve, meg fogja érteni ezt a formátumot gond nélkül. A felhasználók az abban tárolt soronként egy (osztva \ n). Minden sor a formája:

Bejelentkezés nem igényel magyarázatot. Paraméter birodalom azonosnak kell lennie, mint a második argumentum a kivitelező Sabre \ DAV \ Auth \ Plugin. és megemészteni a1 - hash, ugyanaz, mint az OEM-bővítmény:

Ami a saját backend hitelesítés

Ha szeretné felvenni megemészteni hitelesítéshez használja Sabre \ DAV \ Auth \ háttér \ AbstractDigest mint a szülő osztály, osztályok, Saber \ DAV \ Auth \ háttér \ Fájl és Saber \ DAV \ Auth \ háttér \ OEM példaként.

Ha megy, hogy végre az alap HTTP-alapú hitelesítést használ Saber \ DAV \ Auth \ háttér \ AbstractBasic mint a szülő osztály és végrehajtja módszerek validateUserPass.

További információ a osztályokba Sabre \ HTTP_ * megtalálható RawAuthentication cikket. Ebben a régi iránymutatások végrehajtásának hitelesítést.

Konfigurálása Web Server

A legtöbb szerver közvetlenül „out of the box” teszik lehetővé olyan hitelesítési fejléc, de bizonyos, azt meg is kell benne.

Apache + (Fast) CGI

Ha fut a PHP CGI vagy FastCGI, akkor az Apache nem megy át a hitelesítési fejléc alapértelmezés szerint. Akkor be őket az alábbi szabályok mod_rewrite:

Ha már van a mod_rewrite szabályt, amely továbbítja az összes URL-t bármelyik fájlt a szerveren, meg kell változtatni, hogy a következő minta:

Megjegyzés: a /server.php. Ahelyett, hogy te, persze, meg kell adnunk a megfelelő fájlt.

IIS nem támogatja HTTP_AUTHORIZATION automatikusan. Akkor lehetővé teszi az alábbiak szerint: PHP utasítás. Itt van egy idézet a kézikönyvben:

Szintén fontos megjegyezni, hogy mivel a korlátozások a Microsoft IIS kezdve PHP 4.3.3, HTTP-hitelesítés nem működik ez a szerver, ha a PHP telepítése CGI. Annak érdekében, hogy a PHP-t 4.3.3+ módosítsa a konfigurációs «Directory Security» saját IIS. Kattintson «Edit» és törölje az összes mezőt, kivéve ez a konfiguráció «Anonymous Access».

A probléma a biztonságos módban

Ha engedélyezi „safe mode», PHP hitelesítés automatikusan hozzáadja a folyamat azonosítóját a birodalom területén. Ez a probléma az emésztés hitelesítést, amely felhasználja a birodalom, hogy meghatározza a hash.

A probléma megoldásához, biztonságos mód kikapcsolásához, vagy használja az alapvető hitelesítés helyett Digest.

További információért látogasson el az Útmutató a PHP.

Hitelesítés révén webszerver

Hitelesítés elvégezhető a webszerver. Ez akkor lehet hasznos, ha szeretné használni a fejlett hitelesítési módszerek által biztosított Apache modulok (beleértve az LDAP, Kerberos, és SASL).

Mert ez a backend Sabre \ DAV \ Auth \ háttér \ Apache. Ahhoz, hogy használni, adjuk hozzá a plug-in az alábbiak szerint:

Kapcsolódó cikkek