2012-02-05 3 views
3

В настоящее время после входа в систему Литий хранит в сеансе и файлы cookie все строки из таблицы пользователей, такие как пароль, хэш и т. Д. Как удалить (не разрешать хранить) некоторую информацию, такую ​​как пароль и хэш?Литий все строки в файлах cookie, сеанс

+2

Вы поняли, что проблема была решена? – joeb

ответ

2

В классе Session хранится то, что вы ему рассказываете! После завершения проверки Auth :: вы должны сохранить только идентификатор сеанса и/или абсолютно необходимые данные в файле cookie. Также не забудьте использовать шифрование, предоставляемое литиевым (AES), из коробки.

Для получения более подробной информации отправьте свой логин и все соответствующие модели/фильтры.

0

Попутный опции к Auth::check получит передавалась к адаптеру, а также (плюс некоторые дополнительные) - для этого я предполагаю, что вы используете Form адаптер для Auth класса.

Попробуйте сделать это, когда вы выполняете чек: Auth::check('config', $data, array('fields' => array('fields', 'you', 'want'))

Ключевым моментом здесь является то, что массив мы лавировали на конце с fields ключа в нем, это будет передаваться до Form адаптер, который принимает в тех вариантах и использует их для запроса вашей модели для соответствующего пользователя. Говоря явным образом, какие поля возвращаются, они возвращают их обратно в класс Auth для хранения.

0

С this commit вы можете передать опцию 'persist' => array('field1','..') в Auth::check или установить их по умолчанию в конфигурацию сеанса начальной загрузки, чтобы хранить только указанные поля.

Так как вы установили это в загрузчике/session.php

Auth::config(array(
    'user' => array(
     'adapter' => 'Form', 
     'session' => array(
      'persist' => array('_id','username') 
     ), 
     'model' => 'Users' 
    ) 
)); 

или определить поля, при вызове Auth::check() - это перекроет все из приведенного выше конфигурации!

Auth::check('user', $this->request, array(
       'persist' => array('username','email') 
      )) 

Примечание. Если не указано явно, пароль никогда не сохраняется по умолчанию.

Смежные вопросы