PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: так ли это?
mindinbox
Отправлено: 15 Октября, 2011 - 11:24:39
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




Вопрос скорее теоретический.

Вот я раньше думал зачем она нужна эта админка, когда можно все редактировать руками, зная код, тем более написаный тобой. Но все повернулось иначе, появись у меня некое подобие сайта. И так, я сей час кое-что скажу по поводу, а вы подтвердите или опровергните и подскажите оптимальные пути решения.

И так, например, у меня есть сайт http://mysite.ru. Когда пользователь вводит в адресной строке браузера это название, то он автоматически попадает на главную страницу index.php, к примеру... и все, все операции (как видит пользователь) проходят именно на ней. Ну допустим там есть еще ссылка на новости и в этом случае (для пользователя опять же) на этом сайте существует только 2е страницы индекс и ньюс. Допустим мне нужно попасть в админку и добавить новость или изменить дизайн или забанить юзера и, что бы в нее попасть, я дописываю в адресной строке нечто на вроде http://mysite[dot]ru/a*d_m_i*n/control_panel.php (об этой странице знаю только я, и темболее там может находится еще дикая авторизация и логин и пароль опять же знаю только я) где у меня находится меню управления/добавления всего и вся...

Теперь, непосредственно вопрос. Так ли это вообще делается? Безопасно ли так делать? И каким образом можно сделать еще? Вот впринципе то, что меня интерисует.

(Отредактировано автором: 15 Октября, 2011 - 11:31:49)

 
 Top
Сид Вишез
Отправлено: 15 Октября, 2011 - 13:49:20
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




нет, это не безопасно. её легко будет найти с помощью какого-нить сканера структуры сайтаhttp://hacker-pro[dot]net/showthread.php?t=13747
 
 Top
White
Отправлено: 15 Октября, 2011 - 14:31:04
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




Сид Вишез ну найдет, и что дальше? в большинстве cms админки вообще находятся по адресу admin/ или administrator/ ну и толку с того? если грамотно сделана авторизация, и используется единая точка входа можно и ссылку на главную страницу на админку кинуть, большими красными буквами, только это никак не повлияет на безопасность.


-----
if(time()>1356048000) die();
 
 Top
mindinbox
Отправлено: 15 Октября, 2011 - 22:50:25
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




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

(Отредактировано автором: 15 Октября, 2011 - 22:52:15)

 
 Top
White
Отправлено: 15 Октября, 2011 - 23:46:41
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




mindinbox пишет:
куча вопросов остаются для меня без ответов
ну так задайте их.


-----
if(time()>1356048000) die();
 
 Top
caballero
Отправлено: 16 Октября, 2011 - 00:11:09
Post Id


Активный участник


Покинул форум
Сообщений всего: 6000
Дата рег-ции: Сент. 2011  
Откуда: Харьков


Помог: 126 раз(а)




Если сайт не слишком сложный зачем вообще некая отдельная админка
Отдельная админ панель это как минимум дублирование функционала - например список товаров на страницах сайта и похожий список в админке

Если залогинившийся на сайт юзер является админом - просто покажите дополнительные пункты меню или дополнительные мконки (например редактирование на списке товаров)


-----
Бесплатная система складского учета с открытым кодом https://zippy[dot]com[dot]ua/zstore
 
 Top
vixa
Отправлено: 16 Октября, 2011 - 00:56:20
Post Id



Новичок


Покинул форум
Сообщений всего: 55
Дата рег-ции: Авг. 2011  
Откуда: Украина


Помог: 0 раз(а)




Вот примерный код как защитить админку а пользуясь методами ПОСТ
CODE (html):
скопировать код в буфер обмена
  1. http://mysite.ru/?id=admin

PHP:
скопировать код в буфер обмена
  1. $id = $_POST['id'];
  2. switch($id) {
  3. case "admin";
  4. if($_SESSION['ID'] != "" && $row['userstatus'] == 1) {require_once "admin.php";} else {require "firs.php";}
  5. }


-----
Vixa
 
 Top
White
Отправлено: 16 Октября, 2011 - 09:27:39
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011  
Откуда: Днепропетровск


Помог: 28 раз(а)




vixa а что произойдет если мы перейдем по адресу http://mysite.ru/admin.php? вобще HTTP методами защитить ничего нельзя.


-----
if(time()>1356048000) die();
 
 Top
mindinbox
Отправлено: 21 Октября, 2011 - 11:01:50
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




что-то я совсем забыл про эту тему... И тем не менее благодарю всех, ответивших, кое-что узнал новое.... Вобщем пока я забыл про эту тему, я додумал и сдела как думал, а именно: отдельная паппка в корне сайта, например, "admin" в ней (не удалось избежать дублирование, долго мучился ня д этим, но зайдя сюда, понял, что это нормально, за это спасибо). В этой папке еще одна папка и два файла, один из которых не пускает на второй если ввести неверный пароль, а на втором же имеется проверка этого самого пароля. Пароль находится в базе, а конфиги базы в отдельной папке защищены .htaccess'ом... авторизация выглядитм примерно так:

файл_1
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form action = "файл_2.php" method = "post">
  3.         <input type = "text" name = "lgn">
  4.         <input type ="password" name = "pwd">
  5.         <input type = "submit" name = "go" value = "go">
  6.         <input type = "reset" value = "clear">
  7. </form>
  8.  


файл_2
PHP:
скопировать код в буфер обмена
  1.  
  2. $result = mysql_query("SELECT * FROM таблица WHERE ID = '1'"); //примерный запрос
  3.         $query = mysql_num_rows($result);
  4.  
  5. if ($query != 0) {
  6.         while ($q = mysql_fetch_array($result)) {
  7.                 if($_POST['lgn'] !== $q['LGN'] || $_POST['pwd'] !== $q['PWD']) {
  8.                         header ('Location: файл_1.php') ;
  9.                 }else echo "Добро пожаловать, господин" ;
  10.                                 }
  11.  }
  12.  


Что бы зайти в админку, я пишу в адресной строке http://мойсайт/файл_1.php. В файле_2 и находится сама панель управления. Правильно ли так делать или это просто извращение? И правильно ли хранить пароли в базе в открытом виде? И как зашифровать пароль в базе.

P.S. Не стоит сильно меня пинать. Казалось бы все ясно, но что если виной всему параноя, которая находится в конфликте с нехваткой мозгов. Вот и прошу вбить этих самых мозгов, что бы прекратить конфликт.

(Отредактировано автором: 21 Октября, 2011 - 11:55:14)

 
 Top
Stasnislav
Отправлено: 21 Октября, 2011 - 11:41:20
Post Id



Гость


Покинул форум
Сообщений всего: 109
Дата рег-ции: Апр. 2011  


Помог: 4 раз(а)




Пароли в md5


-----
Программисты на работе общаются двумя фразами: «непонятно» и «вроде работает».
 
 Top
mindinbox
Отправлено: 21 Октября, 2011 - 11:55:50
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




md5... хм... буду копать по md5. Благодарю.
 
 Top
gephaest
Отправлено: 21 Октября, 2011 - 11:59:46
Post Id



Новичок


Покинул форум
Сообщений всего: 32
Дата рег-ции: Янв. 2010  


Помог: 0 раз(а)




желательно еще данные из формы экранировать
 
 Top
mindinbox
Отправлено: 21 Октября, 2011 - 15:50:51
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




gephaest пишет:
желательно еще данные из формы экранировать

каким образом?
 
 Top
fredrsf
Отправлено: 21 Октября, 2011 - 18:02:01
Post Id


Новичок


Покинул форум
Сообщений всего: 33
Дата рег-ции: Июнь 2010  


Помог: 0 раз(а)




Хороший вариант единой точки входа и разделение типа роль-право. Если роль такая-то, то права такие-то. Как-то так я и делаю)))
(Добавление)
mindinbox пишет:
gephaest пишет:
желательно еще данные из формы экранировать

каким образом?

sprintf() + mysql_real_escape_string(), а еще лучше PDO.
 
 Top
mindinbox
Отправлено: 09 Ноября, 2011 - 18:03:41
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Окт. 2011  


Помог: 0 раз(а)




спасибо, ребят.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB