Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/371.32  10 Dec 2000  20:28:58
 To : Mike
 Subject : Re: Как сбросить данные Basic Auth?
 -------------------------------------------------------------------------------- 
 
 В твоём письме от Sun, 10 Dec 2000 00:12:01 +0300 написано:
 
 mvr>>> Как заставить клиента повторно аутентифицироваться - я знаю. А
 mvr>>> вот как вообще сбросить логин/пароль, который лежит в кэше
 mvr>>> браузера?
 mvr> 
 AC>> По спецификации HTTP - никак. То есть выдав 401, можно, но это как раз
 AC>> то, что ты и так умеешь - "войти под другим именем".
 mvr> 
 mvr> Да вот нехорошо, блин. Так бы можно было для вообще
 mvr> неавторизованных пользователей показывать одно, а для других -
 mvr> другое.
 
 Это и так можно. У меня это сделано так: есть страничка /login, где
 проверяется пароль и выдается 401, если неверен (у меня там mod_perl, так что
 дешевле проверять пароль в content handler'е, а вообще все равно), а если
 верен - редирект на параметр, куда вернуться (в норме - откуда пришли) или на
 /. Поскольку /login в корне, то выставленный в процессе аутентификации  realm
 работает на все дерево, и тем самым дальше браузер будет отдавать эту
 информацию, никого не спрашивая. Правда вот чтобы проверить ее, кажется,
 придется воспользоваться опяь же mod_perl'ом - если не стоит require, то
 mod_cgi не отдаст REMOTE_USER.
 
 mvr> И через куки не всё слава Богу, и через PATH_INFO, и
 mvr> через Basic Auth... Есть ли вообще-то счастье в жизни?
 
 Hет. Попыти использовать для сессионного общения датаграмный протокол к добру
 не приводят, а приводят к необходимости реализовывать поверх него снова
 сессионный. Что, надо сказать, выглядит смешно, если учесть, что этот
 датаграмный реализован поверх сессионного...
 
 mvr> Еще один вариант, не лишенный кривизны: авторизоваться по basic
 mvr> auth и использовать имя в качестве session_id. Заавторизовался
 mvr> один раз - чисто получил уникальную сессию. Ткнул на странице
 mvr> logout - из сессии стерся признак онлайна, и, когда в следующий
 mvr> раз пойдем на защищенную страницу, опять выдадим 401.
 
 Тоже вариант...
 
 --- slrn/0.9.6.3-as (Linux)
  * Origin: AKA с подствольным плюсомётом (2:5020/371.32)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Как сбросить данные Basic Auth?   Artem Chuprina   10 Dec 2000 20:28:58 
Архивное /ru.cgi.perl/7351852d08571.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional