![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 24.04.2015
Сообщений: 199
|
![]()
Здравствуйте. Посмотрите пожалуйста, правильно ли я сделал проверку авторизации пользователя на административную чать сайта.
Запросы делаю с помощью AJAX (все запросы в БД с параметрами только там), поэтому проверку поставил там же, на файле AJAX. Вот код авторизации индексной страницы (я использую единую точку входа): Код:
Код:
Код:
Булат Азат улы
|
![]() |
![]() |
![]() |
#2 | |||
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]() Цитата:
Цитата:
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
|||
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 24.04.2015
Сообщений: 199
|
![]()
Pavia, проверку пароля изменил, поставив md5:
Код:
Вы написали, что нет проверки при создании сессии - я же сессию создаю уже после проверки, которую написал выше? Или я что-то не понимаю? Если я "далёк от истины", не могли бы отправить меня на какой-то сайт, где об этом написано понятным языком, для начинающих? А то сам не смог найти нормальный сайт.
Булат Азат улы
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,184
|
![]()
В вашем случае - даже просто обновление страницы по f5 заставит аас вводить пароль заново.
В основном файле надо сначала проверять сессию и только если ее нет начинать проверять а не хочет ли кто авторизоваться... так как пользователь один и жестко прописан, смысла хранить в сесси егоимя не вижу. Просто храните true или 1 |
![]() |
![]() |
![]() |
#5 | |
Форумчанин
Регистрация: 24.04.2015
Сообщений: 199
|
![]()
Я тоже думал, что бы там хранить. Сессия-то мне нужна только для проверки авторизации. Ладно, переименую в "1".
Цитата:
Индексная страница (единая точка входа, сам сайт находится тут): Код:
Код:
Код:
Булат Азат улы
Последний раз редактировалось Bulat Ibrahim; 05.09.2017 в 21:20. |
|
![]() |
![]() |
![]() |
#6 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
![]()
Bulat Ibrahim
Как это по мягче сказать. md5 является слабым хэшем. Он уязвим к "брутфорсу". Радужные таблицы и сайты декодирования-хэшей позволяютвскрыть пароль за считанные секунды. Поэтому рекомендуется применять хэши с солью. Стоит вам это доделывать или нет решать вам - я бы отложил на потом. Предполагаю что ещё необходима защита от DDoS на уровне единой точке входа. Но я абсолютно не в курсе как это сделать. Как пример сдешний форум с таймаутом на поиск в течении 20 секунд. А в остальном у меня притензий нет.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 25.02.2007
Сообщений: 4,184
|
![]()
Ну блин какая безопасность, какой мд5? Если человек простейшую авторизацию не может на сессиях сделать?
Что вы к мд5 прицепились? Как вы этот хеш получите то? Только если вам в руки попадет исходник файла! Хеши используют для того, чтоб слив бд пользователей с паролями не был так фатален. Тут по сути нет пользователей и паролей хранимых в бд. По поводу кода.. я вижу чтотнет понимания логики авторизации и плюс технические недочеты. Например сессию стартовать нужно в самом начале, а не внтри проверки лог пасса... И вообще - вы проверяете потом работоспособность того что написали? Или сразу сюда? |
![]() |
![]() |
![]() |
#8 | |
Форумчанин
Регистрация: 24.04.2015
Сообщений: 199
|
![]()
Pavia, спасибо!
ADSoft, авторизация на сессиях мне и не нужна, поэтому, и не стремился сделать полноценные сессии. Я только в этом форуме узнал, что нужно сделать проверку в AJAX-файлы, где есть запросы. Не знал бы - сделал бы вообще без сессий. Цитата:
Конечно, свой код проверяю. Только вот проверку существования сессии (в AJAX-файле) не проверил, так как я пока сам контент пишу в отдельной HTML-странице, в удобочитаемом виде. А потом уже перенесу на переменную "$moharrirContent" в файле administrator.php. Поэтому, условие проверки сессии в файле AJAX у меня закомментирована. Не могли бы сказать вкратце, какие недочёты есть в коде? Что делаю не правильно?
Булат Азат улы
|
|
![]() |
![]() |
![]() |
#9 | |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
![]() Цитата:
session_start() не будет работать после вывода, отправки заголовков и т.п., поэтому да. Обычно это делают в каком-нибудь bootstrap.php, который инклудится во всех точках входа в начале.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
|
![]() |
![]() |
![]() |
#10 | |
Форумчанин
Регистрация: 24.04.2015
Сообщений: 199
|
![]() Цитата:
То, что в HTML нет PHP и AJAX я тоже знаю. Они просто добавляют на нужное место HTML-код и передают на сервер. Но для меня-то они, как файлы, есть ![]() То, что до session_start() не должно быть вывода текста, я знаю.
Булат Азат улы
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подключение только авторизации пользователя | artemavd | PHP | 0 | 08.08.2017 12:39 |
Расставление элементов авторизации и регистрации пользователя | lexflax | PHP | 5 | 06.04.2014 18:57 |
лог авторизации пользователя | volanddd | PHP | 4 | 28.06.2013 11:06 |
Cоздание авторизации пользователя | Olga89 | БД в Delphi | 22 | 29.12.2012 05:00 |
Созранение авторизации пользователя | _PROGRAMM_ | PHP | 5 | 12.01.2010 10:22 |