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: