LINUX.ORG.RU

PHP Session


0

0

Здравствуйте.

Долго думал над вопросом, так и не решил, с точки зрения безопасности, что лучше:

1. Писать в сессии переменную admin = true

2. Писать в сессии логин и пароль пользователя (или uid) и в каждом скрипте читать admin из базы данных?

3. Или что то еще?

Заранее спасибо ;)


Ответ на: комментарий от boombick

В смысле собственный обработчик сессий?

Самому генерировать session id и хранить данные о сессиях в базе? Почему не стоит использовать встроенный в php?

Мне в принципе одну переменную всего нужно хранить.

p.s. проект под php 4.1, если это важно

junk
() автор топика
Ответ на: комментарий от boombick

>Писать в сессию admin = true и использовать собственный обработчик сессий

admin = true достаточно

собственный обработчик - сударь, да вы извращенец.

roller ★★★
()
Ответ на: комментарий от BobiKK

1. Собственный пхп механизм отлажен.

2. Написание своего механихма будет 96% дублирование идей существующего. Что вы можете нового принципиально предложить?

3. Судя по задаче собственный обработчик там не нужен. Как и в 99.99% всех пхп проэктов.

4. Несовместимость с другими проэктами, использующие стандартный механизм. А вдруг через 1-2-3 года захочется прикрутить какой либо существующий проэкт, который использует сессии.Ну например фотоальбом который каталог пользователя берет из сессии.

Механизм сессий стоит переписывать в единственном случае - когда задача слишком специфична. Например сессий много и хранить их надо достаточно долгое время.

roller ★★★
()
Ответ на: комментарий от roller

http://ru2.php.net/manual/ru/function.session-set-save-handler.php

Все, что ты понаписал конечно красиво и правильно, но вот только багтраки почитать на предмет взлома через сессии времени, похоже, не хватило.

> Несовместимость с другими проэктами, использующие стандартный механизм

Вы вообще хоть что-нибудь сложнее гостевухи видели? Вы пишете полный и абсолютный бред :)

boombick ★★★★★
()
Ответ на: комментарий от boombick

Да, спасибо. Читали цать лет назад и баловались.

Вы наверное в 20 веке еще живете? Это все проблемы администратора. Он следит за тем чтобы у него стояла правильная версия ПО, необходимые патчи и правильные настройки.

Видели, пишем, знаем.

Обьясняю еще раз на пальцах: ВАША реализация сессий может быть несовместима со стандартной(в мелочи какой то, ну вот например сериализация у вас не совсем верная для частного случая какого нить итератора, а оно вам и не нужно потому что таких структур ВЫ не используете), и проэкты которые используют стандартные механизмы могут перестать работать. Поэтому ВАША реализация может быть использована лишь если вы уверенны что ДРУГИЕ проэкты вы интегрировать не будете.

roller ★★★
()
Ответ на: комментарий от roller

Таки что мне мешает использовать собственную реализацию вместе со стандартной? Вот сколько раз делал собственный обработчик и ни разу не натыкался на проблемы с совместимостью...

boombick ★★★★★
()
Ответ на: комментарий от roller

Ну да, остались, вообщем, при своих мнениях :) Чего и следовало ожидать :)

boombick ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.