Нужен совет по организации авторизованного доступа

Alex_v.tv

Новичок
Нужен совет по организации авторизованного доступа

Суть вопроса:

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

Есть ли необходимость громоздить систему авторизации с использованием мускула, сессий, или достаточно воспользоваться механизмом .htaccess?

В последствии, возможно, будет реализована система on-line заказов, тогда, конечно без сессий не обойтись... Ну а пока? Может есть какие подводные камни...
 

Фанат

oncle terrible
Команда форума
Если система заранее рассчитана на расширение, то лучше сделать сразу сессиями.
http://phpfaq.ru/session - подробно и с примерами.
 

Romantik

TeaM PHPClub
А почему бы сразу не сделать с помощью сессий и базы? Что бы потом не переделывать все.
 

Alex_v.tv

Новичок
Если система заранее рассчитана на расширение, то лучше сделать сразу сессиями.
http://phpfaq.ru/session - подробно и с примерами.
А почему бы сразу не сделать с помощью сессий и базы? Что бы потом не переделывать все.
Ваша правда, просто времени маловато...

-~{}~ 19.08.04 14:09:

Тогда вопрос с другой стороны:

если делать авторизацию на мускуле, достаточно ли перед отправкой запроса просто проверять введённые данные на наличие ' '' и спецсимволов и отбрасывать наглого посетителя назад при их наличии?
 

Фанат

oncle terrible
Команда форума
авторизацию "на мускуле" сделать невозможно.
наличие спецсимволов никак не говорит о наглости посетителя.
отбрасывать надо только тех, кто ввел неверную пару логин-пароль.

в общем если времени мало, то сделай на хтаксессе и не парься.
 

Romantik

TeaM PHPClub
достаточно разрешить в качестве логина и пароля букв, цифр и _
ну и не забыть минимум и максимум
 

Alex_v.tv

Новичок
Пришла мысль такая:

допустим, что пользователей внезапно стало много :)
удобно было бы заносить их в базу вместе с логином и паролем...
но сессии пока не нужны...
тогда и возникает необходимость в простой проверке, имеется ли такой юзер в базе и, соответственно, проблема
защиты от попыток изменить запрос вида:

PHP:
SELECT * FROM $table WHERE user='$login' AND pass='$password'
на

PHP:
SELECT * FROM users WHERE login='user' OR 1=1--' ...
Вот к этому и относится вопрос "достаточно ли проверять данные введённые пользователем ... " или есть ещё какие-то возможности залезть в закрытый раздел через форму доступа...

Раньше мне было прятать нечего, а теперь вот появилось )))
 

Фанат

oncle terrible
Команда форума
К сожалению, твое понимание технологии веба оставляет желать много лучшего.
Сессии не с потолка придуманы для красоты.
а потому, что без них проверять будет нчего.

Идешь, и вдумчиво читаешь http://phpfaq.ru/na_tanke
А потом думаешь, откуда будут браться '$login' AND '$password' при переходе от страницы к странице

-~{}~ 19.08.04 14:37:

проблема же защиты от попыток изменить запрос вида:
решаетcя гораздо проще
мужик, ну, ты понял ;-)
http://phpfaq.ru/slashes

-~{}~ 19.08.04 14:40:

и, к тому же, проблема защиты от попыток изменить запрос существует ВСЕГДА при работе с базой данных, а не только при проверке пароля.
 

Alex_v.tv

Новичок
Ok'

мужик, я тебя понял :)
раньше, при добавлении записи пользователем, я просто резал все "запрещённые" символы...

Спасибо всем! Топик можно убивать...
___________________

А главная истина: быстро токо кошки родятся )) Буду разбираться.
 

alpes

Весь мир на ладони
для авторизации используй HTTP-аутентификацию (http://php.net/features.http-auth), как по мне в ряде задач это даже удобней механизма ссесий. К тому же много времени на реализацию не уйдет. логин/пароль можешь пока запихнуть и в файл. Позже все это дело легко можно наращивать: прикрутить базу, защиту...
По данной теме полезна будет ссылка:
http://detail.phpclub.net/article/page_password1
 

Фанат

oncle terrible
Команда форума
Diesel
ну сделай авторизацию "на мускуле".
А я посмотрю - как ты будешь мускулем логин с пролем спрашивать, как заставищь браузер их с каждым запросом передавать.

Alex_v.tv
И я б тоже почитал :)
про что почитал-то?
 

Alex_v.tv

Новичок
Дело не втом, чтоб передавать по ссылке, а дать доступ к какой-то информации...

Первоначально идея была такой.

Например, если пользователь есть в базе, то запустить скрипт прайс-листа со скрытой колонкой....

Но при построении постраничной навигации по этому самому прайсу идея авторизации на мускуле теряет всякий смысл, всё равно придётся воспользоваться сессиями.

Это общие соображения. Не притендую на их правильность ))

К сожалению из-за дифицита времени не успеваю ознакомиться подробнее и информацией по данному вопросу.
Так что можно считать, что просто поддерживаю беседу.

__________________
Фанат
Вопрос Diesel'я:
Кратенько мог бы пояснить чего это я не понимаю?
Вот про это бы и почитал )
 

Фанат

oncle terrible
Команда форума
Дело не втом, чтоб передавать по ссылке
А дело именно в том.
Ты же сам ниже говоришь все правильно,что
всё равно придётся воспользоваться сессиями
из-за постраничного вывода.

авторизации на мускуле
Да мать вашу.
Какая к черту авторизация на мускуле?
Сказано же - никакой авторизацией мускул заниматься не может!

перед тем, как записать в сессию то ,что юзер имеет право смотреть прайс, пароль надо проверить ПО БАЗЕ!
Надо? Надо!
У тебя же в базе лежит пароль, а не в сессии.

База у тебя служит для хранения. Она на то и база. она хранит. ты введенный пароль сверяешь с лежащиим в базе.
И ВСЕ!
Это все, на что база годится.
Передашь ты ей пароль - она сравнит.
Не передашь - САМА ОНА НИОТКУДА ЕО НЕ ВОЗЬМЕТ.

А проверка пароля ,мой милый - это еще не АВТОРИЗАЦИЯ!
Это вход на сайт. НО ТОЛКУ-ТО с того, что ты вошел на сайт, если ты после этого двинуться никуда не можешь! Надо какой-то механизм попросить, чтобы он пароль за тобой таскал. или признак авторизованности, сигнал - что да, вот этот чувак пароль вводил.
Вот это и называется авторизацией. И мускуль в этом процессе не участвует и не может участвовать.
Потому, что лежит глубоко на серверею.
А лазишь ты по сайту - из браузера!

Вот поэтому меня так и бесят дизелевы замечания, что они людей с толку сбивают!
 

Alex_v.tv

Новичок
Я это и имел в виду :)

А термин "авторизация" в моём употреблении, согласен, неверен
 
Сверху