![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Как можно просто реализовать простую афторизацию на своём сайте? Пишу тобишь сайт для себя и лень делать сложную авторизацию. Может есть простой способ?
|
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Вот так можно?
|
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
1) Поставить куки админа.
2) Скрипт ставящий куки удалить. 3) Распознавать админа по кукам и продлевать срок их действия. |
|||
|
||||
ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 1 Всего: 15 |
если доступ надо полностью ограничить на некий скрипт или папку - юзай авторизацию через .htaccess
если возможен доступ к одному скрипту пользователей с разным уровнем доступа, тогда неплохой вариант - использование PEAR (Auth_HTTP) - понадобится всего несколько строчек кода правда Auth_HTTP работает только если php наcтроен модулем апача иначе - сессии
ИМХО, не лучший вариант в плане безопасности зато, признаю, самый простой (если не считать .htaccess) |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
А может кто-нибудь про Auth_HTTP расказать?
|
|||
|
||||
ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 1 Всего: 15 |
да там, в принципе, все в мануале есть
экзампл из мана:
как видишь - все предельно просто создаешь в БД таблицу вида login-password (если нету БД можно использовать файлы или что-нить другое - контейнеров для паролей там много) вписываешь в этот кусок кода данные по БД и вставляешь в начало своего скрипта и все, собсна про dsn можно почитать в мане по PEAR:DB хотя я предпочитаю .htacess )) |
|||
|
||||
IvanB |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 23.5.2005 Где: Irkutsk Репутация: нет Всего: 5 |
Имхо, Google может....
![]() http://dmitry.ints.net/library/prog/link/P....auth_http.html Опоздал...) Это сообщение отредактировал(а) IvanB - 8.4.2006, 12:36 --------------------
Закон отладки: Каждая последняя ошибка является предпоследней. |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Ок спасибо!
![]() А вот так вот безопасно будет?
$kernel->html->login(0); - форма ввода пароля $kernel->html->login(1); - Говория что удачно вошли $kernel->html->login(2); - Говорим что удачно вышли Такая авторизация по md5 на одни час (md5($myPas.$myPas_date)) из хеш пароля. С солью ![]() |
|||
|
||||
IvanB |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 23.5.2005 Где: Irkutsk Репутация: нет Всего: 5 |
? А зачем два раза md5 применять?
Вроде одного хватать должно....) Хотя генерация хеша - исключительно дело вкуса....) Это сообщение отредактировал(а) IvanB - 8.4.2006, 14:14 --------------------
Закон отладки: Каждая последняя ошибка является предпоследней. |
|||
|
||||
ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 1 Всего: 15 |
вот кто-то удивится, когда после трех суток работы md5_inside получит еще один хеш и строчку с временем...
|
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
Просветите ламера в этом деле. Хэш на куки ставится - чтобы уберечь куки от CSS-атаки (или как ещё их можно узнать)?
|
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
md5($myPas.$myPas_date) - это что бы хэш которые записываеться в куки работал только один час
![]() |
|||
|
||||
AztEK |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 723 Регистрация: 4.1.2005 Репутация: нет Всего: 18 |
Может я щас бред скажу, но может просто создать файл с названием типа vjshfhsduihiuvhsd.php
Прописать в нём админку без всяких сессий и кук. Фик туда кто попадёт - название то... -------------------- Linux is like wigwam -- no windows, no gates, apache inside. |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Можно, но мне нужно лазить по самому сайту как админ.
|
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
Задним умом догнал ![]() |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Wolf1994,
Чёт я не понял о чём ты ![]() ![]() Так как насчёт моего кода? ![]() ![]() |
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
Я всё никак не могу понять - зачем использовать эти хэши. Чем отличается хранение пароля в хэше и в простом, незакодированном, виде? То есть, я так понимаю, при добавлении в хэш времени, придаётся дополнительная защита. А если использовать всего один параметр - сам пароль - зачем хэш? |
|||
|
||||
ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 1 Всего: 15 |
найдут запросто более того, этот файл еще и поисковики, скорее всего, проиндексируют (даже если автолистинг папок отключен)
хеши используются для кодирования паролей даже если ты знаешь хеш пароля, восставновление по нему самого пароля займет очень много времени например, на сайте есть дыра под sql-injection позволяющая вывести на экран некую таблицу с хешами паролей даже если злобный хакер ) эту дыру найдет, получить пароль админа он все равно не сможет |
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
А что мешает этому хакеру установить соответсвующий кук с полученным хэшем? Ведь проверка идёт по кукам? |
|||
|
||||
Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: нет Всего: 67 |
||||
|
||||
ZlojEzh |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 8.10.2005 Где: Киев, Украина Репутация: 1 Всего: 15 |
абсолютно ничто
поэтому куки лучше всего использовать (при создании системы авторизации) только для хранения идентификатора сессии а на сами сессии ставить ограниченный срок существования все бы хорошо, но раз в час пользователю придется вводить пароль по-новой я бы все же использовал сессии... а еще лучше - .htaccess |
|||
|
||||
Wolf1994 |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 5.10.2004 Репутация: нет Всего: 29 |
А чем безвременные куки хуже сессий? Если вывод информации фильтруется (htmlspecialchars ()) и они не лежат в MySQL-базе, то ведь их нет возможности узнать?
|
|||
|
||||
Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: нет Всего: 67 |
||||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
В том и заключаеться защита, что бы куки никто не воровал. Мой код имитирует сессии ![]() ![]() А то что каждый раз вводить новые - это да, но ведь я же хочу это для себя еделать только. Кстати такие штуки и в больших скриптах авторизации есть, например на masterhostе при входе в СР указываешь сколько будет длиться сессия ![]() |
|||
|
||||
paraZite |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.4.2006 Где: /Ukraine/Mariupol Репутация: нет Всего: 1 |
Мой пример:
Это сообщение отредактировал(а) paraZite - 10.4.2006, 22:13 |
||||||
|
|||||||
Ciber SLasH |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1813 Регистрация: 9.11.2004 Где: С.-Петербург Репутация: нет Всего: 67 |
paraZite, твой скрипт зациклится, т.к. ты при всех условиях перенаправляешь на этот же скрипт.
|
|||
|
||||
paraZite |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 9.4.2006 Где: /Ukraine/Mariupol Репутация: нет Всего: 1 |
хз... если логин и пасс не введены, а кукисы невалидны идёт вызов die();
если введены логин и пассс и они валидны, выставляются куки и скрипт редиректит пользователя сам на себя, а так как кукисы уже не пусты, скрипт завершает свою работу, опознав пользователя... Ща протестю ещё раз на всякий случай... У меня ничего не циклится. Это сообщение отредактировал(а) paraZite - 10.4.2006, 22:44 |
|||
|
||||
IvanB |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 23.5.2005 Где: Irkutsk Репутация: нет Всего: 5 |
Имхо, для улучшения безопасности содержимое кукиса желательно завязывать на IP пользователя и ID сессии (или что там у вас)...
![]() Извините, если не то.....) --------------------
Закон отладки: Каждая последняя ошибка является предпоследней. |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Это все понятно
![]() |
|||
|
||||
IvanB |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 23.5.2005 Где: Irkutsk Репутация: нет Всего: 5 |
Через файлы, чтоли?
![]() --------------------
Закон отладки: Каждая последняя ошибка является предпоследней. |
|||
|
||||
Elfet |
|
|||
![]() Белый и Пушистый ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 3776 Регистрация: 2.4.2003 Репутация: нет Всего: 16 |
Нет, воотбе без использования бд
![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Для профи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |