##Авторизация
###Основы
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