Skip to content

Latest commit

 

History

History
36 lines (23 loc) · 2.19 KB

auth.md

File metadata and controls

36 lines (23 loc) · 2.19 KB

##Авторизация

###Основы

Knee предоставляет только доступ к данным и методам для авторизации пользователей через класс Auth. Knee не знает как разработчик захочет реализовать авторизацию пользователей, будет ли она использовать сессии или данные будут храниться в memcached.

Работа с классом Auth похожа на механизм работы с блоками или моделями.

Пользовательские механизмы авторизации должны храниться в директории /app/auths/, директория может иметь вложенные папки.

Доступ к механизму авторизации осуществляется "точечным путем" dir.subdir.name, а имя класса такого механизма должно иметь вид Dir_Subdir_Name_Auth.

###Доступ

В директории /app/auths/ уже лежит файл base.php, который является механизмом авторизации по умолчанию.

Обратится к свойствам и методом класса Base_Auth можно через класс Auth.

Auth::login($login, $password));
if (Auth::is_login()) {
	echo Auth::user()->name;
	Auth::logout();
}

Если разработчик желает написать альтернативный механизм авторизации, например, через социальную сеть Twitter, он может создать новый класс авторизации Twitter_Auth, разместить его в /app/auths/twitter.php и обращаться к нему следующим образом.

Auth::get('twitter')->login($key));

Вызов метода автоматической авторизации, если существуют необходимые куки, сесси или данные в кэше, лучше реализовать в файле /app/starts.php