Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
OrmaJever пишет:
Сесия заканчивается когда браузер закрывают. Апотом открыть и снова авторизироватся?
ДЛя чего тогда печеньки придуманы?
В общем случае использование системы хранения авторизационной информации в клиентских значениях cookie является безопасным в том случае - если соответствующие элементы включают в себя исключительно идентификатор сессии - возможность операций с которым предоставляет пользователю только отключение от текущего сеанса - без изменения важных серверных данных
Тем не менее возможно использование такой авторизационной схемы при которой локальные значение cookie обеспечивают хранения имени пользователи и пароля в специальной форме и являются безопасными - реализация такого решения заключается в хранении MD5-хеша от конкатенации логина и пароля а также спеицифичных информационных полей как IP-адреса и времени подключения сессии и спеицифческих параметров браузера клиента - в таком случае возможность копирования cookie не предоставляет никаких возможностей по несанкционированной авторизации
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
antobra
Отправлено: 30 Октября, 2010 - 12:56:37
Посетитель
Покинул форум
Сообщений всего: 327
Дата рег-ции: Окт. 2010
Помог: 1 раз(а)
OverNik пишет:
1. Работало бы в цикле, но увы ты не поставил LIMIT 1, а сервер то не знает что имено ты от него хочь, это нужно все указивать в запросе.
2. Отвыкай от быспредела в запросах, ставь кавычки
3. SELECT * - ты точно все хочь вытянуть, или просто влом прописать что имено тебе нужно от mysql сервера? Не экономишь ты ресурсы - так нельзя, ведь скорость скрипта - вот его плюс...
Ок, подправлю... Спасибо!!
Все-таки, как сделать так, чтоб выводились все строки в таблице с айди, которым я указываю. У меня же только одна <tr> стоит и сюда прописывается только одна строка. А нужно чтобы было <tr> с данными столько, сколько строк в таблице. Я вот о чем)))
OrmaJever
Отправлено: 30 Октября, 2010 - 13:05:39
Активный участник
Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010 Откуда: Чернигов
Помог: 299 раз(а)
Uchkuma пишет:
2. Когда закрывается браузер, сессия остается (она ведь хранится на сервере!), а вот кука может быть удалена (и то в зависимости от настроек, с которыми она была установлена) и тогда связь с сессией будет прервана. В этом случае сервер назначит новый id и создаст новую сессию.
3. Для хранения НЕконфиденциальных данных. Т.е. не логина и пароля.
2) сесия записывает в куки свой параметр (у меня это PHPSESSID). Эта печенька установлена без времени. Тоесть при закрытии браузера эта печенька удаляется и приновой открытии начинается новая сесия. Не буду утверждать но так работает мой php 5.1 возможно у вас как то по другому.
3) А кто сказал что там хранить конфиденциальные даные?
Вот часть авторизации:
$mysql->query("UPDATE users SET hash='' WHERE login='".$login."'");
}
При входе пользователя ему ставится случайная строка и в бд и в куки. Затем она проверяется при каждом входе.
При выходе эта строка удаляется, и при новом входе они генерируется снова. Система без отказная
----- Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
OverNik
Отправлено: 30 Октября, 2010 - 13:06:25
Частый гость
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
#Начало таблици
#PHP код, возможно с циклом + : <tr> <td></td> <td>2</td> <td>3</td> </tr>
#Конец таблици
И посмотри что у тебя в исходнике творится после того как страничка сгенерировалась (Добавление) OrmaJever, можно вбить в базу IP юзера и ID его SID, и после того как юзер обратно вернется на страничку востановить SID, конечно одного IP будет мало, в некоторых прокси и так далее. Кстати JustUserR это же самое описал выше.
antobra
Отправлено: 30 Октября, 2010 - 13:14:36
Посетитель
Покинул форум
Сообщений всего: 327
Дата рег-ции: Окт. 2010
Помог: 1 раз(а)
OverNik пишет:
#Начало таблици
#PHP код, возможно с циклом + : <tr> <td></td> <td>2</td> <td>3</td> </tr>
#Конец таблици
И посмотри что у тебя в исходнике творится после того как страничка сгенерировалась (Добавление) OrmaJever, можно вбить в базу IP юзера и ID его SID, и после того как юзер обратно вернется на страничку востановить SID, конечно одного IP будет мало, в некоторых прокси и так далее. Кстати JustUserR это же самое описал выше.
А как осуществить этот цикл?
В html'е в сгенерированной странице отображается, что и в php, т.е. одна строка... самая первая, которую находит php с нужными параметрами WHERE. А нужно, чтоб выводились все с нужным параметром)
OverNik
Отправлено: 30 Октября, 2010 - 13:17:25
Частый гость
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
У тебя что несколько user с одним и тем же login? Пересмотри свой SQL запрос!!!
antobra
Отправлено: 30 Октября, 2010 - 14:07:52
Посетитель
Покинул форум
Сообщений всего: 327
Дата рег-ции: Окт. 2010
Помог: 1 раз(а)
OverNik пишет:
У тебя что несколько user с одним и тем же login? Пересмотри свой SQL запрос!!!
причем тут логины пользователей?
речь идет о сторонней таблице, не юзерской... а просто таблица, где есть несколько одинаковых параметров из столбца id_user. (айди_юзер назван не по логину или айди, можно назвать хоть blabla)
И как вывести все строки, где есть одно и тоже в столбце id_user в таблицу (например "1"). Не списком, списком я могу вытащить, а в таблицу нет... Вот такой вывод нужен:
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
Я лично у себя проверял, если есть данные у которых ячейка id одинаковая, то скрипт их нормально выводит. Может у тебя каждный столбец ID уникальный? Повторных нету? Посмотри, так как пример реально проверен!!!
antobra
Отправлено: 30 Октября, 2010 - 20:05:40
Посетитель
Покинул форум
Сообщений всего: 327
Дата рег-ции: Окт. 2010
Помог: 1 раз(а)
OverNik пишет:
Я лично у себя проверял, если есть данные у которых ячейка id одинаковая, то скрипт их нормально выводит. Может у тебя каждный столбец ID уникальный? Повторных нету? Посмотри, так как пример реально проверен!!!
Окей, сейчас займусь детальным изучением (Добавление)
Все получилось, только я сделал так:
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
А разница?
antobra
Отправлено: 30 Октября, 2010 - 20:30:32
Посетитель
Покинул форум
Сообщений всего: 327
Дата рег-ции: Окт. 2010
Помог: 1 раз(а)
OverNik пишет:
А разница?
А у меня показывалась строка с названиями столбцов, потом строка из базы, снова столбцы, потом база и т.д. хах
странно)
JustUserR
Отправлено: 31 Октября, 2010 - 02:08:23
Активный участник
Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009
Помог: 17 раз(а)
OverNik пишет:
Можно вбить в базу IP юзера и ID его SID, и после того как юзер обратно вернется на страничку востановить SID, конечно одного IP будет мало, в некоторых прокси и так далее. Кстати JustUserR это же самое описал выше.
Основным критерием обеспечения безопасности при реализации автоматического восстановления и продления сессионой авторизации пользователя является использование специальных безопасных cookie-записей на клиентской стороне - в таком случае сохраняемое в браузере пользователя значение является MD5-кодом не подлежащим обратному восстановлению и связанного с текущим путем проведения авторизации - в таком случае при осуществелнии последущего обращения к серверному PHP-скрипту производится поиск открытого сеанса для заданного имени пользователя и генерация MD5 по идентчой схеме - и в случае если значения сопадаю то производится допуск пользовател к ресурсу Кроме того после осуществления успешного входа возможно проведения обновления cookie-записи - это позволяет реализовывать автоматическое продление саенса при нахождении пользователя на web-сайте
----- Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
OverNik
Отправлено: 31 Октября, 2010 - 04:37:01
Частый гость
Покинул форум
Сообщений всего: 182
Дата рег-ции: Янв. 2008
Помог: 0 раз(а)
JustUserR Вы описали детальный процес востановления SID, это понятно, но увы не все безопасно, и все дынне можно подставить. Для хорошой реализации можно воспользиватся ключовым словом который будет добавляться для хэша в MD5. Не правда ли?
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.