[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Использование одних и техже сесий(session) на доме
BesTime
Здравствуйте, сталкнулся со следующей проблемой.
Авторизация пользователя происходит на на домене example.ru. На домене one.example.ru уже сессии не работают которые были созданы на домене второго уровня. Как это исправить?
Заранее спасибо!



Спустя 42 минуты, 58 секунд (4.02.2012 - 14:24) known написал(а):
Сессия работает ТОЛЬКО на одном домене!
Чтобы заставить под той же сессией (авторизацией то есть) нужно плясать с бубном... кукисы то есть заюзать.
ИМХО не так прямо и просто это делается... б.м лучше поглядеть в сторону OpenID? wink.gif

Спустя 2 минуты, 6 секунд (4.02.2012 - 14:26) neadekvat написал(а):
BesTime, используй свои кукисы и базу данных для хранения сессий.
Кукисы ставь с 5-ю параметрами, где 5-й - домен, его вводи так:
'.example.com' - обрати внимание на точки перед названием домена. Т.е. кукисы будут доступны на всех поддоменах.

Спустя 30 минут, 53 секунды (4.02.2012 - 14:57) BesTime написал(а):
neadekvat так кукисы вроде не безопасно использовать и вроде можно подменить?

Спустя 5 минут, 39 секунд (4.02.2012 - 15:02) known написал(а):
Кикисы нужно сделать с сохраненным с них СЕССИОННЫМ ключом! при закрытии брозверя оный, как и сессия, уничтожается (теряет актуальность) - потому и гимор есть здесь... не делается всё на автомате как заведение сессии да один (основной) домен... Программировать нужно вручную процедуры проверки легальности входа юзверя на субдомен.

Спустя 46 секунд (4.02.2012 - 15:03) BesTime написал(а):
я имею ввиду мне нужны сесии используемые на домене example.com для поддомена one.example.com которые находятся на одном и томже сервере,папки лежат на одном уровне

Спустя 2 минуты, 10 секунд (4.02.2012 - 15:05) known написал(а):
Неважно на одном или не одном сервере! и папки тут ри при чём! Встроенный механизм сессий не позволяет (для целей секурности) эксплицировать сессию вне одного домена!

Спустя 2 минуты, 9 секунд (4.02.2012 - 15:07) BesTime написал(а):
тоесть когда пользователь авторизуется я должен в куки записать что мне надо и чтобы нен подменили куки генирировать специальные ключ который тоже будет записываться в куки?

Спустя 8 минут, 34 секунды (4.02.2012 - 15:16) known написал(а):
При авторизации юзверя сессионный ключ записывается в сессию на основном домене, в заводимый кукис, который должен быть доступен и на субдомене, и в БД как тут подсказали. Но возможно и без юзанья БД, но гимора не меньше... так на так...
При переходе юзверя на субдомен оный ДОЛЖЕН снабжаться в ссылке текущим сессионным ID (не ключом!-последний СЕКРЕТЕН!) и по нему на субдомене должен проверяться легальность входа юзверя. т.е что ТАМ сессия еще существует!
Это общая схема. Детали это уже дизайн и девелопинг wink.gif

Спустя 5 минут, 51 секунда (4.02.2012 - 15:22) BesTime написал(а):
а если я просто в кукис запишу сгенерированый ключ, а когда он зайдет на субдомен проверю есть ли он у него в кукис если есть равен ли он тому что записался у меня в бд при авторизации на основном

Спустя 2 минуты, 35 секунд (4.02.2012 - 15:24) known написал(а):
И немаловажно: чтобы юзверь разлогиниваясь стирал процедурой логаута тот кукис! smile.gif

Спустя 44 секунды (4.02.2012 - 15:25) known написал(а):
В БД может остаться СТАРЫЙ сесс-ключ! и хана! wink.gif
Ваще БД не панацея... сессии это надежно... wink.gif

Спустя 3 минуты, 12 секунд (4.02.2012 - 15:28) BesTime написал(а):
а зачем старый ключ чтобы стирался? он просто будет заменяться если пользователь еще раз авторизуется

Спустя 3 минуты, 55 секунд (4.02.2012 - 15:32) known написал(а):
ключ не стирается а заново генерится. стирается кукис чтобы не светиться в брозвере когда юзверь скажем работает из кафе (не своего ПК). Так принято по секурности... но дело хозяйское... нынче чего только народ не "творит"! sad.gif

Спустя 3 минуты, 11 секунд (4.02.2012 - 15:35) BesTime написал(а):
об этом я даже не подумал спасибо то что предупредил, это серьезная дыра в безопасности сайта

Спустя 37 секунд (4.02.2012 - 15:36) known написал(а):
вот-вот! smile.gif

Спустя 2 минуты, 49 секунд (4.02.2012 - 15:39) inpost написал(а):
Представим на секундочку, что сессия нужна для хранения лишь бесполезной информации так, чтобы каждый раз за ней не бегать. Если мы работаем с денежной системой, допустим, то нам в любом случае необходимо будет каждый раз дёргаться и получать эти данные с БД, а не в сессии хранить. Итого сессия становится бесполезной.
Разработчики тоже не дураки, если поддомен разграничили с сессией, то явно подразумевается, что поддомены существуют для работы с иными сервисами, а не для одного приложения.
Мелочи можно вообще в куки кидать.

Спустя 12 минут, 2 секунды (4.02.2012 - 15:51) known написал(а):
А "эти данные" это ЧТО у вас подразумевается? smile.gif
Не упускайте контекст заданного вопроса... wink.gif

Спустя 32 минуты, 48 секунд (4.02.2012 - 16:24) known написал(а):
Кста, для ЦМСок решение гиморное но кажется есть из коробки:
http://joomlaforum.ru/index.php/topic,158734.0.html
http://blogomunity.com/joomla-extensions/a...es-manager.html
Disclaimer: "за что купил за то и продаю!" (с) wink.gif
Почитайте и это тоже:
http://www.sql.ru/forum/actualthread.aspx?tid=729352
http://phpclub.ru/talk/threads/%D0%9E%D0%B...B0%D1%85.45513/
smile.gif

Спустя 9 минут, 58 секунд (4.02.2012 - 16:34) BesTime написал(а):
inpost полностью согласен в сесиях храню только id пользователя, остальные данные изменяемые а те которые не изменяемые проще запросить из бд biggrin.gif

Спустя 3 минуты, 41 секунда (4.02.2012 - 16:37) BesTime написал(а):
что мешает SID использовать в качестве временного пароля?

SID это sesion id?

Спустя 5 минут, 41 секунда (4.02.2012 - 16:43) known написал(а):
Да. но не все так просто как кадется уважаемому инпосту...
кста, тут почитать тоде полезно имхо
http://www.instantcms.ru/blogs/myinstantcm...torizacija.html

Спустя 1 минута, 34 секунды (4.02.2012 - 16:44) BesTime написал(а):
а SID при каждой авторизации одного и тогоже пользователя меняется?

Спустя 2 минуты, 43 секунды (4.02.2012 - 16:47) known написал(а):
Добрый совет, БесТайм! прислушайтес к сказанному:

Цитата

Для авторизации на нескольких доменах (не поддоменах 1 домена) есть 2 пути - простой и сложный.

Простой и легко реализуемый - использовать OpenID. подходит не всем.

Сложный и трудоемкий - разработать собственную схему кроссдоменной авторизации.
Такие схемы существуют, но боюсь, что делиться деталями с вами никто не будет:
кроссдоменная авторизация используется очень редко, и обычно в коммерческих
проектах с закрытым исходным кодом.
Я встречал только одну OpenSource-реализацию кроссдоменной авторизации (не openid),
ныне благополучно закрытую из-за дырок в безопасности.


Был бы рад услышать, что я ошибаюсь smile.gif

Спустя 1 минута, 16 секунд (4.02.2012 - 16:48) known написал(а):
Цитата (BesTime @ 4.02.2012 - 13:44)
а SID при каждой авторизации одного и тогоже пользователя меняется?

СИД меняется НЕ при авторизации, а при открытии НОВОЙ сессии на серваке! wink.gif

Спустя 6 минут, 7 секунд (4.02.2012 - 16:55) BesTime написал(а):
Для авторизации на нескольких доменах (не поддоменах 1 домена) есть 2 пути - простой и сложный.

тут говорится про разные домены а мне для основного домена и поддоменов. Я понял тебя что это надо сделать через куки, че мне для этого надо. В куки и в бд записать СИД и при заходе юзера на сайт делать куки=бд так? и это будет сто процентов безопасно?

Спустя 5 минут, 13 секунд (4.02.2012 - 17:00) known написал(а):
Не получится 100% безопасности! особенно при юзании бд... всё очень непросто и сказанное челом по ссылке - это незря! И между прочим, сам я -- спец с 16-летнм стажем -- разрабатывал подобные приблуды, притом тратил на это недели, вкл-но процедуры отладки и тестирование на секурность естественно! wink.gif

Спустя 4 минуты, 23 секунды (4.02.2012 - 17:04) BesTime написал(а):
ну а как могут залезть в бд или подменить СИД если там непредскозуемые айдишники.
Цитата
сё очень непросто и сказанное челом по ссылке - это незря!

Про OpenID?

Спустя 5 минут, 29 секунд (4.02.2012 - 17:10) known написал(а):
Да не залезть в БД и не сменить сид!... всё гораздо сложнее.. но нее скажешь на форуме то что тянет на книги и монографии по секурности...
(Вы же уж точно не умеете мыслить логически и всё продумать-просчитать в голове. sad.gif)
Но извините, я вам не бесплатный препод для предмета интернет-секьюрити... wink.gif

Спустя 4 минуты, 4 секунды (4.02.2012 - 17:14) known написал(а):
Если не хотите гимору и не способны сами разрабатывать высокопрофессиональные проекты - юзайте openid или аналоги, с их несложным API, и точка...

Спустя 43 секунды (4.02.2012 - 17:14) BesTime написал(а):
Ну врде я и не прошу меня учить, просто совет хотел услышат чтобы хоть както обезопасить свой сайт

Спустя 26 минут, 39 секунд (4.02.2012 - 17:41) BesTime написал(а):
а как записать в куки SID?

Спустя 22 минуты, 14 секунд (4.02.2012 - 18:03) known написал(а):
BesTime, "совет" в ТАКИХ областях тянет хз на что и сколько...
Т.б если Вы не знаете даже как записать в куки SID... sad.gif

Спустя 3 минуты, 42 секунды (4.02.2012 - 18:07) known написал(а):
Т.б что именно СОВЕТ я Вам дал. и не плохой... тот же факт, что он Вам не приглянулся, не отменяет пользы от оного... wink.gif

Спустя 6 минут, 33 секунды (4.02.2012 - 18:14) BesTime написал(а):
я раньше не сталкивался с SID а в гугле показывает что это устанавливается в начало докумена
session_id();

А как записать полученый id в переменную я не понимаю

Спустя 5 минут, 4 секунды (4.02.2012 - 18:19) known написал(а):
Ну почитайте же на php.ru или где еще о сессиях и кукисах!!!

Спустя 1 минута, 58 секунд (4.02.2012 - 18:21) BesTime написал(а):
этим и занимаюсь
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.