Не могу прочитать куки (используя плагин jQuery и куки) - PullRequest
1 голос
/ 02 сентября 2010

У меня есть веб-сайт DotNetNuke, который по умолчанию люди используют анонимно.Когда они хотят войти в систему, они нажимают на ссылку, которая переводит их на /DesktopModules/AuthenticationServices/ActiveDirectory/WindowsSignin.aspx, а затем перенаправляет их обратно на первую страницу.

На первой странице находится некий jQuery, предназначенный для изменения файлов cookie, созданных во время входа в систему.процесс от постоянного до основанного на сеансе (поэтому они исчезнут, когда браузер пользователя будет закрыт).

Однако, хотя я могу создавать и читать свои собственные куки в jQuery (используя плагин куки), я не могудля просмотра файлов cookie, которые были созданы на стороне сервера во время входа в систему.

На изображении ниже показаны файлы cookie, которые существуют для веб-сайта DotNetNuke.

Screenshot of IECookiesView

Demo1 и Demo3 были созданы jQuery со следующим кодом:

$.cookie('Demo1', 'Fred', { expires: 0.005, path: '/' } );
$.cookie('Demo3', 'Peter', { expires: 0.005, path: '/', domain: 'internet.nt.avs' } );

Эти файлы cookie могут быть прочитаны с использованием следующего кода:

alert( $.cookie('Demo3') );

Однако, если я тогда попытаюсь прочитать один из других куки-файлов, которые я не установил через jQuery, я получу null возвращено:

alert( $.cookie('.DOTNETNUKE') );

Почему это происходит

1 Ответ

5 голосов
/ 02 сентября 2010

Для файлов cookie, созданных ASP.NET с помощью FormsAuthentication, в целях безопасности установлен флаг HttpOnly. Из-за этого к ним нельзя получить доступ через javascript.

...