Форум: "Прочее";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
ВнизЛогин и пароль. Какие могут быть подводные камни? Найти похожие ветки
← →
KilkennyCat © (2009-12-08 17:12) [0]Делаю авторизацию на сайте. Ограничил правилами мин-макс размера, только цифрами и буквами латинскими. Начал думать, а что может помешать использованию прочих символов?
И заодно еще тупейший вопрос: допустимо ли в джавескрипте в качестве параметра функции передать логическое выражение? я, вот, передал ей f(3>2), скушала без ругани, но внутре всегда труе...
← →
TUser © (2009-12-08 17:34) [1]
> допустимо ли в джавескрипте в качестве параметра функции
> передать логическое выражение? я, вот, передал ей f(3>2),
> скушала без ругани, но внутре всегда труе...
А тыхотел, чтобы 3 > 2 == FALSE ?
← →
RWolf © (2009-12-08 17:39) [2]наверно, чтобы 3>2 вычислялось непосредственно в функции.
← →
clickmaker © (2009-12-08 17:44) [3]> допустимо ли в джавескрипте в качестве параметра функции
> передать логическое выражение?
function SuperCalc(expr)
{
return eval(expr);
}
← →
clickmaker © (2009-12-08 17:51) [4]> что может помешать использованию прочих символов?
например, отсутствие русской раскладки на компе, на котором юзер хочет зайти на сайт под паролем кириллицей
← →
Омлет © (2009-12-08 18:13) [5]Храни пароли в виде md5(соль + пароль). Соль для каждого свою генерируй.
← →
Palladin © (2009-12-08 19:03) [6]Обязательно включи проверку на алкоголь, а то я вот тут недавно пароль на нетбуке своем поменял.....
← →
Плохиш © (2009-12-08 19:34) [7]
> Palladin © (08.12.09 19:03) [6]
>
> Обязательно включи проверку на алкоголь, а то я вот тут
> недавно пароль на нетбуке своем поменял.
Неужели после 500-го раза он так и не согласился? ;-)
← →
KilkennyCat © (2009-12-08 19:40) [8]
> TUser © (08.12.09 17:34) [1]
> А тыхотел, чтобы 3 > 2 == FALSE ?
да :) ну это я так, разумеется, имелось ввиду, что любое выражение, что ложное, что истинное...
> clickmaker © (08.12.09 17:51) [4]
> например, отсутствие русской раскладки на компе, на котором
> юзер хочет зайти на сайт под паролем кириллицей
Это понятно. имелись ввиду небуквы и пробел.
> Омлет © (08.12.09 18:13) [5]
>
> Храни пароли в виде md5(соль + пароль). Соль для каждого
> свою генерируй.
Ну это уже хранение. Это в любом случае придется.
Я просто только начал осваивать всю эту кухню. Вот и подумал, может пробел или какая-нить скобка как-нить неоднозначно обработается?
← →
Palladin © (2009-12-08 19:44) [9]
> Плохиш © (08.12.09 19:34) [7]
4 день пошел ) еще не уломал )
← →
Плохиш © (2009-12-08 19:45) [10]
> KilkennyCat © (08.12.09 19:40) [8]
> > clickmaker © (08.12.09 17:51) [4]
> > например, отсутствие русской раскладки на компе, на котором
> > юзер хочет зайти на сайт под паролем кириллицей
>
> Это понятно. имелись ввиду небуквы и пробел.
>
А в чём проблема, используй все символы, которые могут ввести, зачем нужны ограничения. Меня просто убивают какие-нибуть второстепенные сайты, требующие обязательно использовать в пароле буквы в разных регистрах и цифры...
← →
KilkennyCat © (2009-12-08 19:46) [11]
> Palladin © (08.12.09 19:44) [9]
Китайцев попроси. Они владеют технологией взлома сервера Пентагона :)
← →
Palladin © (2009-12-08 19:47) [12]кстати да... за одно и в квартире отопление чуток повысится....
← →
KilkennyCat © (2009-12-08 19:48) [13]
> требующие обязательно использовать в пароле буквы в разных
> регистрах и цифры...
Да, меня это тож раздражает. Я такого делать не буду, но нелатиницу исключил однозначно. А теперь думаю, не слишком ли жестко? просто регэксп на цифры+латиница очень уж просто пишется :)
← →
Anatoly Podgoretsky © (2009-12-08 19:53) [14]> KilkennyCat (08.12.2009 19:46:11) [11]
Ну так пароль Мао Дзе Дун
← →
KilkennyCat © (2009-12-08 19:56) [15]И в догонку еще вопрос о корректности следующего:
Проверку валидности выполнил в виде плагина к JQuery. Дико понравилось, и радостно гогоча начал в этот плагин впихивать все подряд. На третьей функции обнаружил, что можно вынести много общего в отдельную функцию. Вообщем, корректно ли это (вызов общей функции внутри плагина):(function($){
$.myPlugin={};
$.myPlugin.forAllFunction=function(a,b,c,d,e){
....
};
$.fn.myPluginFunctionNumberRaz=function(a,b,c){
....
$.myPlugin.forAllFunction(a,b,c,d,e);
....
};
$.fn.myPluginFunctionNumberDva=function(x,y,z){
....
$.myPlugin.forAllFunction(a,b,c,d,e);
....
};
})
(jQuery);
← →
KilkennyCat © (2009-12-08 20:25) [16]и еще: если в forAllFunction парметром передать (this), то внутре нее он вовсе не будет этим самым текущим объектом... Можно ли как-то выстроить правильно иерархию, чтоб this остался thisom везде?
← →
KilkennyCat © (2009-12-08 20:29) [17]
> KilkennyCat © (08.12.09 20:25) [16]
Блин, перепутал все на свете... Все наоборот!
Если передавать this параметром - все хорошо, работает.
а вот если в forAllFunction явно использовать this - не работает
← →
antonn © (2009-12-08 23:39) [18]
> Начал думать, а что может помешать использованию прочих
> символов?
Ничего, если только тебе при регистрации передадут именно текстовую строку.
А так экранирование при использовании в запросе, экранирование в регулярке, экранирование в выводе - и пофиг какие данные
← →
KilkennyCat © (2009-12-09 00:51) [19]
> antonn © (08.12.09 23:39) [18]
понятно.
Всем спасибо, у мня все заработало, а вот результат: мой первый плагинчик к jquery(function($){$.fn.orangeRR=function(a,b,c,d,e,f,g,h,i){this.each(function( ){$(this).keyup(function(){var z=$(this).val();var t=f;if(a!=""){t+=a.test(z)?b:""}if(c!=""&&d!=""){var j=z.length;t+=(c<j&&j<d)?"":e}if(t!=f){$(this).css(h);$(g).css(h);$(g).text(t)}else{$(this).c ss(i);$(g).css(i);$(g).text(f)}})})}})(jQuery);
симпатично выглядит, правда? :)
проверяет на цифро-латиницу и мин-макс размер, сообщая об этом изменением стиля у двух объектов.
← →
TIF © (2009-12-09 18:38) [20]Вдогонку
При регистрации мыло нужно будет указывать? Если да - тогда нужно учесть адреса @домен.рф ;)
← →
KilkennyCat © (2009-12-09 22:00) [21]
> нужно учесть адреса @домен.рф
именно поэтому я просто отказался от валидации емэйла.
← →
Anatoly Podgoretsky © (2009-12-10 10:27) [22]> KilkennyCat (09.12.2009 22:00:21) [21]
Можешь и от остального отказаться, это тоже пустая трата ресурсов.
← →
blackman © (2009-12-10 14:24) [23]KilkennyCat © (09.12.09 22:00) [21]
Проверка существования хоста почтового ретранслятора для некоторого домена. Т.е. приведенный выше код можно практически не перерабатывая приспособить для проверки существования e-mail адреса:
http://articles.org.ru/cfaq/index.php?qid=2498
← →
KSergey © (2009-12-10 15:30) [24]> blackman © (10.12.09 14:24) [23]
> Проверка существования хоста почтового ретранслятора для некоторого домена.
Нафик? написал пользователь - да и ладно. Неправильно написал - сам дурак, мыло не получит.
Ну правда базу подзасрут, но можно просто грохать пользователей, которые за какой-то разумный период не прошли подтверждение е-мейла.
> KilkennyCat © (09.12.09 22:00) [21]
> именно поэтому я просто отказался от валидации емэйла.
А вот это как раз мне видится странным.
Чего бы не говорил АП, но любой е-мейл по крайней мере содержит @ и в оставшемся после нее хвосте хотя бы одну точку; перед каждой точкой после @ - хотя бы один символ не точка должен быть. Проблеы так же недопустимы в е-майл адресе.
(небольшой нюанс с support@localhost и т.п., но это интранет получается, про него заранее понятно рассматриваем или нет такой вариант.)
← →
KSergey © (2009-12-10 15:33) [25]> KilkennyCat © (08.12.09 17:12)
> Начал думать, а что может помешать использованию прочих символов?
Совершенно ничего!!!
Зачем, ну зачем вообще ограничивать символы в пароле?! из каких соображений??
Я еще могу понять логин - чтобы визуально одинаковых не писали, но пароль-то зачем ограничивать??
← →
KilkennyCat © (2009-12-10 17:01) [26]
> из каких соображений??
из-за отсутствия знаний. Я не знаю толком ни PHP, ни SQL, и особенно как все это передается. Предполагаю возможность ошибок. А сроки у меня сжаты.
← →
Медвежонок Пятачок © (2009-12-10 17:09) [27]с макс длиной пароля тоже надо быть осторожнее.
ибо чревато побочными эффектами.
например две версии квипа.
меняю пароль в одной версии. она в интерфейсе не ограничивает длину пароля. я ввожу там "медвежонок пятачок". сервер отрезает пароль до медвежонка. а я в полной уверенности, что новый пароль такой, какой я ввел.
меняю версию квипа, и при попытке регистрации получаю облом. длинный пароль не подходит.
либо как-то наоборот, но суть примерно такая же.
несогласованность серверной логики и пользовательского интерфейса.
← →
М. Береговой (2009-12-10 19:30) [28]То, что вы обсуждаете - не столь важно. Важнее избежать взлома при проверке пароля и ника при идентификации в базе.
http://technet.microsoft.com/ru-ru/library/ms161953(SQL.90).aspx
← →
KilkennyCat © (2009-12-10 21:25) [29]
> М. Береговой (10.12.09 19:30) [28]
Спасибо, полезная информация.
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.006 c