Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Защита для админки
Форумы портала PHP.SU » » Вопросы новичков » Защита для админки

Страниц (1): [1]
 

1. maragon - 15 Июля, 2011 - 11:11:31 - перейти к сообщению
Думаю как сообразить себе админ панель.
В бд есть юзвери - n\login\pass..
Я авторизовался. n=1;
Хватит ли проверки на номер пользователя(n) и IP(10.10.10.10 пример)? Хорошо
2. Kubert - 15 Июля, 2011 - 11:13:38 - перейти к сообщению
оч хорошая авториязация, советую
http://pyha[dot]ru/articles/php/auth/
3. vlados - 15 Июля, 2011 - 11:26:37 - перейти к сообщению
Лучше храни пароли и логины в БД md5 или mysql5(Этот вариант я использую, но от этого получаются запросы в БД). Юзер вводит логин пароль, они кодируются в md5 или mysql5, сверяются с теми что и в БД, если верно, то отправляется кука с паролем в md5 и логином в простой форме, на каждой странице админки все это проверяется, если нет нужной, свежей куки, то редирект. Еще поставь каптчу(captcha.ru), ее я использую.
4. maragon - 15 Июля, 2011 - 11:38:25 - перейти к сообщению
vlados про авторизацию я не спрашиваю.. я спрашиваю как обезопасить админку.
ввожу лог\пас сверяю с мд5+соль -- ловлю n(id)
если
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(n==1){ echo "ты админ!"; }

+ к записи можно добавить
CODE (htmlphp):
скопировать код в буфер обмена
  1. if(n==1 & хэшадмина=хэшуизбд){ echo "ты админ!"; }
5. vlados - 15 Июля, 2011 - 11:49:28 - перейти к сообщению
maragon Лучше храни пароли и логины в БД md5 или mysql5.
(Добавление)
И просто логин и пароль БД без всяких "Н".
6. OrmaJever - 15 Июля, 2011 - 13:19:23 - перейти к сообщению
maragon пишет:
PHP:
скопировать код в буфер обмена
  1. if(n==1){ echo "ты админ!"; }

как я понял n это типо id пользователя? Это n должно писатся в сесии или в куки чтобы при переходе по страницам она сохранялась, если в сесии это безопастно, если в куки нет.
7. maragon - 16 Июля, 2011 - 13:27:40 - перейти к сообщению
OrmaJever правельно поняли.)
т.е.
CODE (htmlphp):
скопировать код в буфер обмена
  1. при авторизации если лог\пасс схожи - и n(id)=1 следует >> $_SESSION['n_admin'] = $row['n'];
и далее проверяем на сущетвование сессии. Хм
8. Slavenin - 16 Июля, 2011 - 22:07:34 - перейти к сообщению
я когда делал авторизацию разделил всех юзеров на три группы пользователи, админы, модеры. Далее при авторизации цепляешь из таблицы группу юзера, пишешь ее как переменную сессии, и при заходе на страницу проверяешь кто зашел, пользователь, админ или модер. этого более чем достаточно Улыбка
9. xhugo - 16 Июля, 2011 - 22:42:43 - перейти к сообщению
Мы это обойдем,
просто отключим куки, у вас будет n=null==null(n_admin)
(Добавление)
можно примерно так:
проверяем юзера и пароля в бд если все ок то устанавливаем пароль(хеш) в сессиях.
и например при заходе на закрытую страницу, проверяй сессию с хешем который должен быть.
и каждый раз раз проверяется на работу сессий,вдруг отключили
(Добавление)
можно примерно так:
проверяем юзера и пароля в бд если все ок то устанавливаем пароль(хеш) в сессиях.
и например при заходе на закрытую страницу, проверяй сессию с хешем который должен быть.
и каждый раз раз проверяется на работу сессий,вдруг отключили
10. LIME - 16 Июля, 2011 - 22:51:41 - перейти к сообщению
xhugo пишет:
просто отключим куки, у вас будет n=null==null(n_admin)

при отключении куки сессид передается в гете
11. OrmaJever - 16 Июля, 2011 - 22:53:24 - перейти к сообщению
xhugo пишет:
Мы это обойдем,
просто отключим куки, у вас будет n=null==null(n_admin)

это ниче не даст
PHP:
скопировать код в буфер обмена
  1. if(isset($_SESSION['id']) && $_SESSION['id'] != 1) die('пшол отсюда');

 

Powered by ExBB FM 1.0 RC1