13

Поскольку все больше и больше сайтов переходят от использования файлов cookie к использованию localStorage для хранения своих данных (включая "отслеживание ошибок"), меня беспокоит то, насколько далеко пользователь может контролировать это. С помощью куки-файлов можно настроить соответствующие политики, например заблокировать сторонние куки-файлы или получить постоянный запрос. Я не смог найти соответствующую настройку для localStorage.

В поисках SU я обнаружил аналогичный вопрос для Chrome: отключить HTML5 LocalStorage и базы данных для всех веб-страниц / или спросить пользователя. Я также прочитал, как разрешить локальное хранилище для одного конкретного пользовательского сценария, но отключить его глобально? (что не отвечает на мой вопрос) и вопросы о локальном хранилище и кэше Firefox (в котором также указана недостающая документация, но не дано ответа на мой вопрос). Я почти ничего не нашел в поиске Google.

Проблема, с которой я столкнулся вначале с SE в целом (см. MSO) и разрешил благодаря блогу Эрика, позвольте мне предположить, что настройки файлов cookie по крайней мере как-то связаны с localStorage; но так как это не задокументировано, я не хочу полагаться на «попробуй и ошибайся» с одной версией FF, чтобы сделать общие выводы.

Есть ли какая-то документация по этому поводу? Я бы посчитал это большим нарушением конфиденциальности, если пользователь не может контролировать, какой сайт хранит данные в localStorage, поэтому это должно быть как-то возможно.

TL; DR: выполняется ли оно в соответствии с политикой использования файлов cookie, или, если нет, как пользователь может это контролировать?

4 ответа4

11

Отношения Firefox между файлами cookie и локальным хранилищем (из https://bugzilla.mozilla.org/show_bug.cgi?id=341524):

  • отключение файлов cookie отключает хранение, если сайт не находится в белом списке.
  • Включение всех файлов cookie разрешает хранение, кроме случаев, когда сайт находится в списке заблокированных.
  • если сайт настроен на сеанс только в черном списке, можно использовать только хранилище сеансов. Глобальные хранилища обрабатываются как сеансовые хранилища.
  • Точно так же, если настройки cookie установлены только на сеанс, все хранилище используется только для сеанса.
  • если настройки файлов cookie настроены на запрос, это обрабатывается так же, как отклонение файлов cookie. Не уверен, хотим ли мы, чтобы побуждение происходило здесь. Куки запрашивают каждый раз, когда они установлены, или только один раз за сеанс?
  • скрытое предпочтение dom.storage.disabled можно использовать для отключения хранилища DOM.

Таким образом, вы должны иметь возможность использовать менеджеры cookie, такие как Cookie Monster, для управления локальным хранилищем.

Для просмотра / удаления постоянного локального хранилища в Firefox вы можете использовать Foundstone HTML5 Local Storage Explorer или NoTrace. Другие связанные расширения Firefox перечислены здесь.

Из Как очистить и отключить DOM Storage в Firefox, IE и Chrome:

Очистить хранилище DOM в Firefox:

Выберите "Инструменты" -> "Очистить недавнюю историю", откройте "Детали", отметьте "Cookies" и выберите "Все" в качестве временного диапазона.
ВНИМАНИЕ: Никакой другой временной диапазон не очистит хранилище DOM.

[...]

Отключить DOM Storage в Firefox:

Введите «about: config» в адресную строку и нажмите "Enter", чтобы просмотреть настройки своего внутреннего браузера. Прокрутите вниз до «dom.storage.enabled», щелкните по нему правой кнопкой мыши и нажмите "Toggle", чтобы отключить DOM Storage.

От обхода намерения заблокировать «сторонние» куки:

По своей концепции локальное хранилище HTML5 очень похоже на файлы cookie. Для каждого источника существует набор пар имя-значение на диске.

С помощью простого теста легко показать, что функция локального хранилища HTML5 не зависит от настроек сторонних файлов cookie.

Mozilla знает об этой проблеме: Ошибка 536509 - localStorage не подчиняется "сторонним cookie-файлам" прив. К счастью, если вы снимите флажок Firefox «Принимать файлы cookie с сайтов», то localstorage будет включен только для доменов, которые разрешены в списке исключений файлов cookie Firefox. Поскольку JavaScript необходим для установки локального хранилища, расширения блокировки JavaScript, такие как NoScript, также могут смягчить эту проблему.

Локальные хранилища полигонов:

Проблема с Firefox: Ошибка 748620 - Когда время истечения срока действия cookie настроено на запрос каждый раз, localStorage выдает исключение безопасности.

Вся информация в этом ответе была адаптирована из хранилища DOM: хранилище данных браузера, которое может обойти намерение блокировать сторонние куки, поток, который я начал.

2

Я являюсь разработчиком дополнения Cookie Controller, и оно покажет вам разрешения, которые применяются к локальному хранилищу (и хранилищу сеансов), а также позволит вам установить эти разрешения.

Однако, чтобы ответить на исходный вопрос, разрешения для хранилища DOM, по сути, такие же, как и для файлов cookie. Определенные разрешения, такие как сторонние, не применяются, но параметры, запрещающие использование файлов cookie или ограничивающие их текущим сеансом, также применяются к хранилищу DOM. К сожалению, Firefox не покажет вам, использует ли веб-страница хранилище DOM или нет, поэтому может быть сложно проверить. Следовательно аддон полезен.

Существует также скрытый параметр, который полностью отключает все хранилища DOM независимо от файлов cookie: dom.storage.enabled. Это немного жестоко, и обычно вы просто блокируете куки, чтобы заблокировать хранилище. Точно так же исключения, установленные, чтобы позволить отдельным веб-сайтам устанавливать куки, также позволяют им использовать хранилище DOM.

Наконец, существует ограничение на объем хранилища, которое может использоваться каждой веб-страницей. По умолчанию это 5 МБ, но вы можете изменить его, возможно, на ноль. Однако веб-страницы не всегда хорошо справляются с переполнением этой квоты, поэтому вы можете вызвать проблемы, изменив ее.

1

Похоже, не так много документации по этой функции, но вот статья из Сети разработчиков Mozilla. В статье упоминается, что в управлении локальным хранилищем по-прежнему открыто несколько ошибок (все ошибки открыты на момент написания этого ответа). Так что, по крайней мере, на данный момент, похоже, нет никакого способа управлять доступом к локальному хранилищу.

0

Только что нашел решение (еще не пробовал, но, согласно комментариям, которое он должен сделать): есть дополнение Firefox, называемое Cookie Controller, которое, похоже, обрабатывает «старые» куки и хранилище DOM (к сожалению, Flash-куки, иначе LSO, похоже, не чтобы иметь дело с; что сделало бы его полным контроллером):

Контроллер cookie: для каждого сайта Контроллер Cookie: Глобальный
Cookie Controller: настройки для сайта и глобальные настройки

Используя это дополнение, вы должны иметь возможность использовать глобальные и индивидуальные настройки для localStorage. Поскольку localStorage требуется для сайтов SE, здесь предпочтительны настройки для каждого сайта :) Он даже предлагает удалить выбранные "куки" в конце сеанса (например, все, кроме белого списка).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .