Kézikönyv - dokumentáció - zend keretrendszer

A Zend_Auth hitelesítő API-t biztosít, és specifikus adaptereket tartalmaz a közös alkalmazásokhoz.

Megjegyzés. A Zend_Auth osztály végrehajtja a Singleton mintát - csak az osztály egy példánya áll rendelkezésre - a statikus getInstance () módszerrel. Ez azt jelenti, hogy az új vagy a klón kulcsszavak nem működnek a Zend_Auth osztályban. Használja a Zend_Auth :: getInstance () parancsot.

A Zend_Auth adaptert egy adott szolgáltatás, például az LDAP segítségével hitelesítik. RDBMS vagy fájl tárolása. Az adapterek jelentősen eltérőek lehetnek, de néhány alapvető jellemző mindenki számára közös. Például minden Zend_Auth adapter elfogadja a hitelesítő adatokat, végrehajt egy kérelmet a hitelesítési szolgáltatáshoz, és visszaküldi az eredményt.

Minden Zend_Auth adapter végrehajtja a Zend_Auth_Adapter_Interface alkalmazást. Ez az interfész csak egy módot határoz meg: authenticate (). amelyet hitelesítési kérelem végrehajtásához végre kell hajtani. Az illesztőt az autentikálás () előtt kell beállítani. A konfiguráció magában foglalja a hitelesítő adatok (például bejelentkezési és jelszó) beállítását, valamint meghatározott értékek meghatározását, például az adatbázistábla-illesztő adatcsatlakozási beállításait.

Ez egy példa egy olyan illesztőre, amely megköveteli a bejelentkezés és a jelszó beállítását a hitelesítéshez. További részletek, például a hitelesítési szolgáltatás igénylése, rövid időre elhagyták:

osztályú MyAuthAdapter implementálja a Zend_Auth_Adapter_Interface alkalmazást

Amint azt a dokkban jeleztük, a hitelesítő () -nek vissza kell adnia egy példányt a Zend_Auth_Result (vagy annak örökölttől). Ha bármilyen okból nem lehet hitelesíteni, a hitelesítő () hitelesítőnek ki kell vetnie egy kivételt, amely a Zend_Auth_Adapter_Exception-ból származik.

Hitelesítési eredmény

A Zend_Auth adapter hitelesítő () metódusa a Zend_Auth_Result példányt adja vissza a hitelesítési kísérlet eredményének megjelenítéséhez. A Zend_Auth_Result objektum az illesztõvel együtt kerül feltöltésre, amikor létrejön, és a következõ négy módszer jelenti az alapvetõ mûveleteket:

isValid () - csak akkor igazolja a TRUE értéket, ha a hitelesítési kísérlet sikeres.

getIdentity () - visszaadja a hitelesítés eredményében kapott azonosítót.

getMessages () - visszaad egy sor hibaüzenetet, amely a hitelesítési kísérlet során történt.

A felhasználói azonosító tartós tárolása

A hitelesítő adatokat tartalmazó lekérdezés hitelesítése önmagában fontos, de fontos az azonosító megőrzésének fenntartása anélkül, hogy minden egyes kérelemhez hitelesítési adatokat kellene átadni.

A HTTP protokollnak nincs olyan állapota, de technológiák, például cookie-k és munkamenetek kerültek kifejlesztésre, hogy támogassák a kiszolgálóoldali állapotot a webes alkalmazás több kérése között.

Alapértelmezés szerint egy azonosító PHP-munkamenetben történő mentése

Alapértelmezés szerint a Zend_Auth biztosítja a sikeres hitelesítési kísérlet eredményeként kapott azonosító állandó tárolását a PHP munkamenetben.

Ha a kísérlet sikeres, a Zend_Auth :: authenticate () tárolja az azonosítót tartósan tárolva. Ha másképp nincs beállítva, a Zend_Auth a Zend_Auth_Storage_Session tárolóosztályt használja. amely viszont Zend_Session-ot használ. Ehelyett egyéni osztályt lehet használni, akkor kell, hogy adja át Zend_Auth :: setStorage () objektum, amely végrehajtja Zend_Auth_Storage_Interface.

Megjegyzés. Ha az azonosító automatikus mentése egyetlen konkrét esetben sem megfelelő, akkor a fejlesztőnek meg kell tagadnia a Zend_Auth osztály használatát, és közvetlenül használnia kell az adaptert.

1. példa A munkaterületben lévő névtér módosítása

A Zend_Auth_Storage_Session a Zend_Auth névtéren használja. A Zend_Auth_Storage_Session konstruktor másik értékének átadásával felülírható. amelyet továbbít a Zend_Session_Namespace konstruktornak. Ehhez ellenőrizze a hitelesítési kísérletet, mivel a Zend_Auth :: authenticate () automatikusan elmenti az azonosítót.

// Vedd le a Zend_Auth példányt

$ auth = Zend_Auth. getInstance ();

Kapcsolódó cikkek