Понимание JSessionId в нескольких доменах - PullRequest
0 голосов
/ 22 июня 2011

Я пытаюсь понять уникальность и область применения JSessionId, поскольку он связан с несколькими несвязанными доменами.

Я прочитал При каких условиях создается JSESSIONID? и все еще есть вопросы -

В частности:

Если пользователь посещает www.app1.com, и это приложение вызывает www.app2.com для загрузки данных, два jsessionId созданы - одиндля каждого домена?

Аналогично, когда передается вызов www.app2.com, передается ли какая-либо информация о jsessionid из www.app1.com?

Какое влияние на это оказывают перенаправления?(Например, запрос http://app1.com/login.jsp перенаправления на http://app2.com/login.jsp)

Ответы [ 2 ]

2 голосов
/ 22 июня 2011

Если пользователь заходит на www.app1.com, и это приложение звонит на www.app2.com для загрузки данных, создаются ли два jsessionId - по одному для каждого домена?

Да.Точнее, каждое отдельное WebApp будет выдавать свой собственный файл cookie для своего домена.Так что www.app1.com/1 и www.app1.com/2 будут иметь разные cookie-файлы, если сопоставлены разные веб-приложения.

Аналогично, когда вызов поступает на www.app2.com,любая информация о jsessionid с сайта www.app1.com была передана?

Нет, но прочитайте о XSS и CSRF о том, почему защита вашего приложения хороша, потому что не сложно внедрить скриптыпередать файл cookie другому URL-адресу.

Какое влияние на это оказывают перенаправления?(Например, запрос http://app1.com/login.jsp перенаправляет на http://app2.com/login.jsp)

Нет вообще. Если вы уже вошли в оба, вы, вероятно, войдете в систему позже. Выход из системыодно не влияет на другое. (Если вы хотите, чтобы по-настоящему один / один выход был отключен, оба приложения должны доверять третьей стороне, такой как сервер CAS или сервер Kerberos).

1 голос
/ 22 июня 2011

JSESSIONID - файл cookie сеанса. Этот cookie имеет набор domain, поэтому в вашем случае у вас будет 2 cookie, оба с именем JSESSIONID с другим путем в их атрибуте domain.

...