Felix Milovanov <felix@Gambit.Msk.SU> wrote:
> > > Спасибо всем за попытку помочь, но думаю, пока я не объясню
> > > свою задумку, вы мне долго будете голову морочить.
> > > А суть проста - мне нужно знать имя пользователя не
> > > авторизуя его! Если вы помните в HTTP 1.1 написано, что UA
> > > должен предоставлять данные для аутентификации заранее для
> > > всех документов на том же уровне или ниже документа, который
> > > выдал 401. Я проверил на IE, он это делает, думаю NN тоже
> > > это делает. Так вот мне и нужно проверить авторизовался
> > > человек до этого или нет, и в зависимости от этого
> > > предпринять разные действия, но ни в коем случае не пытаться
> > > его авторизовывать. Надеюсь теперь понятно. Если у кого то
> > > есть мысли о том как это сделать, отличные от моих, буду
> > > очень благодарен.
[skip]
> Братцы! Для конференции будет очень даже полезно, если мы будем
> отвечать друг другу без подколок. Не думаю, чтобы автор этого письма
> был настолько дураком, чтобы просил того, чего сам не понимает.
> Например, скажу -- у меня самого была точно такая же ситуевина.
> Вернее, не совсем такая - но ОЧЕНЬ похожая. И для ее решения нужно
> было сделать именно то, что пишет автор ( Netscape, кстати, выдает
> заголовок Authorization для остальных документов ) -- выдавать
> REMOTE_USER для ВСЕХ документов, а не только для которых требуется
> авторизация на уровне Apache.
REMOTE_USER содержит имя пользователя, использованное на нижнем
дереве уровня авторизации, и поэтому в принципе не может содержать
глобальной информации. Т.е. значения этой переменной различные
в различных деревьях, в том числе и в перекрывающихся. В отличие от
REMOTE_IDENT, например, которая всегда глобальна, но не всегда
может быть определена. Поэтому смысл Вашего "решения" непонятен.
Непонятно также, что хочет получить Новиков. Если клиент доступается
к CGI-скрипту в защищенном поддереве, то Apache нe пропустит
его без авторизации, но если скрипт запустился, значит, авторизация
уже прошла. В чем проблема? Извлечь сам пароль или его хаш по REMOTE_USER
скрипт может уже локально - из htpasswd или какой-нибудь базы.
В крайнем случае авторизационную информацию можно хэшировать и
совать в cookie, у которой время жизни - до конца сессии клиента.
Cookies примерно для этого и придуманы.
--
Eugene Berdnikov
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =