Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

CGI-приложение. Авторизация [D6, XP]


AlexandrK ©   (2006-02-09 09:02:00) 

Пишу CGI-приложение, сделал на стартовой страничке авторизацию( статья Сергея Васильченко с этого же сайта), но поскольку на следующие странички параметры передаются методом GET, и это все отображается в адресе, юзер может минуя авторизацию зайти на любую страничку. Значит надо где-то сохранить данные о том, прошел он авторизацию или нет, в Дельфи есть примеры про cookies,  но они почему-то не работают - выдает пустые значения. Может у кого есть готовое решение, чтобы заново велосипед не изобретать?


McSimm   (2006-02-09 10:55:00) [1]


> Значит надо где-то сохранить данные о том, прошел он авторизацию
> или нет

Причем сохранить эту информацию на сервере.
(иначе любой клиент может сказать "А я авторизован")

Далее необходимо подумать о том, как обеспечить однозначную идентификацию клиента и информации о нем на сервере. Для этого клиенту передается некий идентификатор. Все последующие обращения клиент должен делать предьявляя этот идентификатор.

В целях безопасности стоит проверять идентификатор в совокупности с каким-нибудь дополнительным параметром клиента (IP или имя клиента или информация о браузере и т/п/). Цель этого - не допустить ситуации, когда использование того же идентификатора посторонним клиентом давало возможность воспользоваться авторизацией.

Передать идентификатор от клиента серверу можно разными способами, как в параметре запроса, так и в cookie.

При работе с куки отсутствуют такие проблемы, как отображение идентификатора в строке запроса, его сохранение в истории браузера и логах, передача ссылки на ресурс вместе с идентификатором и прочие.


> Может у кого есть готовое решение, чтобы заново велосипед
> не изобретать?

Механизм Cookie достаточно готовое решение. Нужно просто разобраться почему не работает, для этого необходимо как минимум четко представлять как что и в какой последовательности передается и хранится.


> но они почему-то не работают - выдает пустые значения.

вот с этим и надо разобраться.


Наверх

Титульная страница Поиск, карта сайта Написать письмо