2011-01-28 2 views
1

В моем приложении у меня есть соль строк в таблице и статическая соль, установленная в моем Zend_Registry. Я пытаюсь обоим, не имея необходимости писать собственный Auth_Adapter. Вот что я имею сейчас только для одного метода соления.База данных и файловая соль для Zend_Auth

$adapter->setCredentialTreatment("SHA1(CONCAT(?, salt))"); 
$adapter->setCredential($values['password']); 

Возможно ли это, или мне нужно написать весь адаптер для этого?

+0

Обратите внимание, что с помощью CONCAT() и SHA1() функции могут сломаться, если вы изменить базу данных (SHA1 не изначально доступен в SQLite), то я советую вам сделать это чисто в PHP. –

ответ

0

Просто добавьте еще один элемент в функцию CONCAT.

$staticSalt = Zend_Registry::get('static_salt'); 
$treatment = "SHA1(CONCAT(?, salt, '" . $staticSalt . "'))"; 
$adapter->setCredentialTreatment($treatment); 
$adapter->setCredential($values['password']); 
+0

Я мог бы поклясться, что пробовал это, но теперь это сработало. Спасибо за это! – tcole

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