Re: Re: cgp cgi & sessions

От: Ares <CGatePro_at_mx_ru>
Дата: Thu 15 Jan 2004 - 21:27:12 MSK


In original message CGatePro@mx.ru writes:
> Hello, on 15.01.2004 20:11, (Ares) at CGatePro@mx.ru wrote:
>
> > In original message CGatePro@mx.ru writes:
> >> Hello, on 15.01.2004 16:49, (Ares) at CGatePro@mx.ru wrote:
> >>
> >>> In original message CGatePro@mx.ru writes:
> >>>> Hello, on 15.01.2004 15:22, (Ares) at CGatePro@mx.ru wrote:
> >>>>
> >>>>> Hi,
> >>>>>
> >>>>> Поскажите - можно ли вызвать CGI скрипт внутри сессии?
> >>>>> т.е. не с url вида http://host/cgi-bin/
> >>>>
> >>>> А зачем? Если нужен Session ID, то его можно либо просто передать в CGI как
> >>>> параметр, либо вытащить из HTTP referer.
> >>>
> >>> referer это хорошо..
> >>>
> >>> была мысль что если можно cgi вызвать внутри
> >>> сессии, то в переменных окружения будет
> >>> что-то типа содержимого %%SESSION%%
> >>>
> >>> что-б не использовать webauth для получения этой информации.
> >>> зачем лишний раз дергать CLI.
> >>
> >> Какие проблемы сделать это так:
> >>
> >> <form action=/cgi-bin/envtest.pl method="post">
> >> <input type=text name=password>
> >> <input type=hidden name=session value="%%SESSION(ID)%%">
> >
> > ...
> >
> > так конечно можно сделать.. но всегда хочется лучшего ;)
> >
> > в моем случае идеальный вариант - когда скрипт
> > вызывается внутри сессии (что-б работали ссылки относительно
> > текущей сессии) и он из переменных окружения мог получить
> > достоверную информацию о пользователе.
>
> Переменные среды могут показать среднюю температуру по больнице - CGI
> запускается сервером без setuid.

если сам сервер будет заполнять SESSION_ID= SESSION_FullAccountName= & etc.. то никакой средней температуры, а только актуальные данные, и нет необходимости их выдирать через CLI.
> > а информацию полученную через post - придется проверять в скрипте
> > на достоверность, поскольку он вызывается от / - и login/pass
> > самим cgp там не проверяется..
>
> 'password' зжесь приведен только для примера.
>
> Зато сам Session ID можно использовать для аутентикации
> <http://www.stalker.com/CommuniGatePro/Security.html#WebUserSASL>. Имея его,
> можно и через CLI вытащить всю информацию об аккаунте
> <http://www.stalker.com/CommuniGatePro/CLI.html#WebSession>, если не хочется
> передавать эти детали в скрипт в виде параметров формы.

вот от этого и хотелось уйти, как я и писал выше. от лишнего коннекта. тем более что у нас всем пользователям CLI запрещен -> скорее работать не будет.
> Если не хочется возиться с параметрами POST, можно, наконец, попытаться
> разобрать HTTP_Referer (который таки проставляется в переменных среды
> сервером) - там в URL Session ID присутствует (если, конечно, CGI был вызван
> с сессионной страницы.)

так похоже и придется делать..
и еще формировать ссылки обратно на сессионные страницы..

> --
> Best regards,
> Dmitry Akindinov -- Stalker Labs

-- 
                                                Ares.
Получено Thu Jan 15 18:27:17 2004

Этот архив был сгенерирован hypermail 2.1.8 : Tue 21 Feb 2006 - 03:14:42 MSK