За последние 24 часа нас посетил 15031 программист и 1639 роботов. Сейчас ищут 968 программистов ...

Сессии, целесообразность

Тема в разделе "Прочие вопросы по PHP", создана пользователем Vitas, 30 дек 2007.

Статус темы:
Закрыта.
  1. Vitas

    Vitas Активный пользователь

    С нами с:
    7 фев 2006
    Сообщения:
    595
    Симпатии:
    0
    Адрес:
    Новосибирск, Академгородок
    Зачем делают срок жизни сессий только до закрытия браузера если, увеличив их до большого времени, мы получаем тоже самое, только при этом избавляемся от КУЧИ мусора на сервере? Это типа ещё один метод защиты от кражи ID сессий? Но если защита ID сессий гарантируется, тогда классическая схема (срок жизни сессии - время работы браузера) теряет всякий смысл?
    Прошу высказать свои мнения на этот счёт.
     
  2. Сотомайор

    Сотомайор Активный пользователь

    С нами с:
    27 дек 2007
    Сообщения:
    22
    Симпатии:
    0
    Адрес:
    Бобруйск )
    1. Смею предположить, что в том числе и для избежания "кучи мусора" сессии и валидны только до закрытия браузера. Потом файлы с сервера чистит сборщик мусора. А так, зашло за день 500 посетителей, которые 5 секунд поглядели на страничку и забыли про её существование. А файлы сессии хранятся день... месяц...
    2. Для долгосрочного хранения были придуманы куки.
     
  3. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    начать надо с того, чтобы понимать суть сессии. сессия - это сеанс и когда ты закрывашь броузер сеанс заканчивается поэтому сеансовые сессии самые правильные. продолжить можно с того, что есть несколько механихмов сохранения сессии (сеанса) - это куки и передача серез параметры (SID=123). понимая это отпадают всякие вопросы о том сколько чего хранить и т.д. есть ситуация когда надо запомнить ползователя (не сессию) на более долгия срок чем сеанс (сессия). тут куки и UID (User Identification) самое то.

    думать о том сколько сессий зранится в файлах или в базе и что и как удаляется - забивать себе голову мусором, т.к. у меня например есть ресурс с почещением 100000 хостов в день и я вообще не думаю о том, где и сколько сессий у меня хранится.
     
  4. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    куки - это отключаемое и подделываемое штучко, сидящее у клиента :)
     
  5. Сотомайор

    Сотомайор Активный пользователь

    С нами с:
    27 дек 2007
    Сообщения:
    22
    Симпатии:
    0
    Адрес:
    Бобруйск )
    Тем не менее это никому не мешает использовать их для авторизации и восстановления "логической" сессии, например, пользования почтовым аккаунтом.
     
  6. Vitas

    Vitas Активный пользователь

    С нами с:
    7 фев 2006
    Сообщения:
    595
    Симпатии:
    0
    Адрес:
    Новосибирск, Академгородок
    400Hz, тогда получается так:
    1. Сессии жизнь которых кончается с закрытием браузера - самые "правильные".
    2. Забивать голову на счет очистки мусора не надо - и так всё нормально.

    Тогда у меня ещё 1 вопрос: когда пользователь во время входа ставит галочку на "Запомнить меня", я делаю так:
    1. Устанавливаю куку с md5("логин:хеш пароля").
    2. А потом если пользователь с такой кукой приходит, то я выполняю автовход.

    Насколько это правильный подход (в смысле на счёт безопасности и т.д.)?
     
  7. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    Vitas
    Да, все верно. Только я бы еще советовал добавить в хешируемое выражение User-Agent, а также IP либо часть IP, чтобы украденную куку нельзя было использовать на другом компьютере/браузере. В идеале - IP целиком, но тогда автовход не будет работать для посетителей с динамическим IP.
     
  8. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    немного соли?
    =)
     
  9. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    400 мне было когда я родился. 40 лет назад.
     
  10. antonn

    antonn Активный пользователь

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    я понял, 440 - это напряжение из розетки с удвоенной частотой ))
     
  11. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    ты не понял. это в розетке пловина моей частоты.
    =)
     
  12. Clone

    Clone Guest

    Вы бы ещё метры с килограммами сравнили...
     
  13. Vitas

    Vitas Активный пользователь

    С нами с:
    7 фев 2006
    Сообщения:
    595
    Симпатии:
    0
    Адрес:
    Новосибирск, Академгородок
    Dagdamor, спасибо.
    440Hz, упс, сорри, ошибся в циферке. ;-)
     
  14. 440Hz

    440Hz Старожил
    Команда форума Модератор

    С нами с:
    21 дек 2012
    Сообщения:
    8.003
    Симпатии:
    1
    Адрес:
    Оттуда
    лучше литры?
     
  15. KombaInER

    KombaInER Активный пользователь

    С нами с:
    5 апр 2007
    Сообщения:
    221
    Симпатии:
    0
    Адрес:
    Днепр+Крым=Украина
    длина пакета для пинга один килограмм =)
     
  16. debris

    debris Активный пользователь

    С нами с:
    14 янв 2008
    Сообщения:
    5
    Симпатии:
    0
    что-то мне не нравится схема сессии+кукиз, ведь у массы пользователей кукиз отключены. выскажитесь пожалуйста или дайте ссылку на вдумчивую статью.
     
  17. Сотомайор

    Сотомайор Активный пользователь

    С нами с:
    27 дек 2007
    Сообщения:
    22
    Симпатии:
    0
    Адрес:
    Бобруйск )
    если они отключены и PHP сконфигурирован соответствующим образом, то ID сессии будет передаваться как GET параметр....
    http://example.com/?SID=j6oAOxCWZh/CD723LGeXlf
     
  18. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    =) есть статистика?
     
  19. Anonymous

    Anonymous Guest

     
  20. armadillo

    armadillo Активный пользователь

    С нами с:
    6 апр 2007
    Сообщения:
    2.380
    Симпатии:
    0
    Адрес:
    Russia, Moscow
    Горбунов Олег дай полную ссылку, а?
     
  21. Anonymous

    Anonymous Guest

    Подумываю у них курс обучения пройти...
     
  22. debris

    debris Активный пользователь

    С нами с:
    14 янв 2008
    Сообщения:
    5
    Симпатии:
    0
    да я вообще ацкий сотона.
    спасибо, ясно, без зашифрованного пароля в кукиз не обойтись. у меня паранойа.
     
  23. Anonymous

    Anonymous Guest

    Неверно.
    Может быть.
     
  24. debris

    debris Активный пользователь

    С нами с:
    14 янв 2008
    Сообщения:
    5
    Симпатии:
    0
    тогда механизм аутентификации через сессии и кукиз мне вообще не ясен. допустим, прользователь авторизуется логин/пароль, на него заводится сессия до конца сеанса | на t времени. где как не в кукиз хранить данные аутентификации? я так понял, что в php-сообществе бытует мнение, что номер сессии подобрать нельзя, а если и можно, то записанные в сессию куски ip и модель браузера решают все проблемы. а как быть с локальными сетями провайдеров, где пользователи работают через прокси? к тому же, в некоторых конторах на всех компах стоит один и тот же браузер. тугому клерку переслать сотруднику ссылку с номером сессии -- раз плюнуть. в итоге мы имеем бытовое хакерство.
    вы хотите сказать, что нет смысла думать об этом вообще? поясните пожалуйста.
     
Статус темы:
Закрыта.