Есть. Грузить жабаскрипт с общего сервера, который проверив куку, отдаст информацию о том авторизован юзер или нет. Авторизация в этом случае обязательно должна проходить через основной сервер. Скажем через редирект: Сайт -> Сервер авторизации -> Сайт.
Sergey89 Ты понимаешь, что это уязвимость? Я открываю твой сайт со сформированной кукой и получаю доступ к закрытым данным. Какую куку ставить, видно из жабаскрипта, который у меня перед глазами.
Sergey89 Смотри, допустим я - хакер Вася. Что я делаю: 1. захожу на твой сайт 2. вижу JS-обращение к другому серверу 3. внимательно изучаю, как результат этого обращения используется у тебя, какая кука ставится для твоего сайта и с каким значением (с основного сервера-то ты только получаешь "да" или "нет") 4. делаю запрос на твой сайт, "передавая" при этом аналогичную куку 5. пью чай.
На сервер никакая кука не уходит. Смотри как проходит залогивание: 1) Я ввожу логин и пароль. На локальном сайте проверяется авторизация и на сервер уходит SOAP запрос с неким SID. 2) Меня кидает на сервер с SID в URL. Я проверяю, что такой SID есть в БД и он не устарел. Если всё ок, то на сервере ставица кука. 3) Меня обратно кидает на сайт. Проверка авторизации: С сервака грузица джабаскрипт, который был сгенерирован скриптом. Скрипт проверяет куку, для текущего клиента и отдаёт либо джабаскрипт, который установит такую же куку на текущий домен и обновит страницу, либо ничего.
авторизация нужна в пределах одного домена (типа domain.com, sub.domain.com, secsub.domain.com) или между разными доменами (domain.com, example.com) ?
гы-гы Код (Text): session.cookie_domain "" PHP_INI_ALL http://ru2.php.net/manual/ru/configuration.changes.php
куки с одними и теми же именами на разных поддоменах должны быть разными. Эт во первых, во вторых поддомены реализуются через htaccess с мод_реврайт
> куки с одними и теми же именами на разных поддоменах должны быть разными. кому должны? > во вторых поддомены реализуются через htaccess с мод_реврайт а куки через браузер. и чо?
блин... хватит курить и тупить, чеснслово. А то щас начну действительно жестко пользоватся своими модераторскими правами и присекать такие тупизмы на корню. Для того что бы кука была доступна на domain.com и всех его поддоменах достаточно правильно установить её через setcookie таким образом PHP: <?php setcookie ('name', 'value', $_SERVER['REQUEST_TIME'] + 3600, '/', '.domain.com');
мне НЕ нужно чтобы кука быда доступна на поддоменах. Кука с именем 'one' на домене и поддомене - это разные куки. Т.е. в них содержаться РАЗНЫЕ данные. И никак нельзя допустить, чтобы с одного домена куки читались под другим. А вот SID как то надо передавать
> нельзя допустить, чтобы с одного домена куки читались под другим. А вот SID как то надо передавать кто-то заставляет объединять все куки?
каждая кука устанавливается отдельно. Можно иметь хоть десятки их и у каждой свои параметры доступности.
мдя ... а есть мысли, как это реализоваьт сквозь домены ? (год назад прихадила подобная задача ... но отвалилась даже неначавшись .. но вот интерес остался , в долгом ящеке)
Есть. Надо открыть учебник по Active Directory в винде и внимательно изучить, как эта актив директори изнутри выглядит/работает. Там эта задача была решена ещё в 2000 году. Особенно обратить внимание на обработку sid и на то, как устроен механизм "доверия между доменами". Взять MS-скую книжку, в которой всё это очень хорошо и подробно разжёвано, и прочитать. А потом можно возвратиться сюда и продолжить изобретать велосипед.
??? А ты хотел, чтобы я тут целый учебник начал цитировать? Я-то это читал и даже сдавал экзамен. Поэтому и даю такой совет. Не нравится - изобретай велосипед дальше.
RomanBush извени .. руки до расковыривания Active Directory как то недошли, я все больше в хттп ковыряюсь ... да консоль мучаю! а по поводу велосипеда ... знаешь куда негляну все костыли больше на глаза попадаются! Вот, если бы ты мог привести пару ссылок, было бы просто озамечательно ! Но ответ в той грубой форме что ты дал , не очень способствует желанию им воспользоватся! кстати я уверен что многие не очень вкурсе про про методы обработки СИДа в Active Directory !
ссылок не знаю. Знаю, что есть учебник, официальный, от мелкомягких. Формат А4, около 250-300 страниц. Типа "введение в Active Directory". И есть пособие для програмистов. Тоже А4, только около 500-600 страниц. Что-то типа "общий обзор концепции работы Active Directory". Вот про неё я тебе и говорил. Хорошая книга. "Воды" мало. А вот "21 урок для полного постижения работы Active Directory" - что-то не попадалось такого. Да и экзамен по ней был - 1000 вопросов, и не более 20% ошибок. То есть - на 800 вопросов надо ответить правильно. И вопросы там нифига не "как добавить папку на рабочий стол". А я уверен, что многие вообще не слышали, что там вообще есть какой-то sid. Он, кстати, идёт лейтмотивом почти по всей книжке. Потому что на его основе всё и сделано.