Summary

  • W3C утвердил P3P 1.0 как рекомендацию 16 апреля 2002 года. Сайты могли описывать заявленные правила сбора и использования данных в XML, доступном программам.
  • Файл ссылок определял, какая политика покрывает адрес страницы или конкретный cookie. Браузер находил этот файл, выбирал первую подходящую запись и загружал текст политики для сравнения с настройками посетителя.

Покупатель дошёл до формы оплаты. В подвале страницы есть ссылка «Конфиденциальность», как и на главной, и в личном кабинете. Человеку можно открыть её и читать. Браузеру, который должен сверять правила сайта с пожеланиями посетителя, нужен ответ точнее: какой текст относится к форме, а какой — к cookie, появившемуся при переходе? Вывеска «администрация» у входа не помогает найти нужный кабинет.

Рекомендация P3P 1.0 от 16 апреля 2002 года предложила XML-словарь для заявлений о собираемых категориях данных, целях использования и получателях. В примере документа Claudia посещает CatalogExample; браузер получает политику страницы и сравнивает её с заданными ею предпочтениями. Сцена понятна, но прежде чем сравнивать, программе нужно выбрать правильную бумагу из всей стопки сайта.

Помогал файл ссылок на политики. Сайт мог разместить его по известному адресу /w3c/p3p.xml, указать в HTML-элементе link или сообщить через HTTP-заголовок P3P. Браузер находил и разбирал файл, затем переходил к указанной в нём политике и разбирал её. Первый документ — план здания, второй — содержание найденного кабинета. Похожий текст по соседству мог относиться совсем к другой части сайта.

Записи POLICY-REF в плане связывали политики с участками пространства URI. Правила охвата могли отдельно включать и исключать cookie. Если к одному URI подходило несколько записей, использовалась первая подходящая по порядку в файле. Очерёдность строк становилась маршрутом: сайт сам расставлял указатели, а браузер шёл по ним к объявленному набору правил.

В учебном примере W3C фигурирует obnoxious-cookie. Одна политика охватывает cookie в целом, но исключает этот; другая запись берёт его отдельно. Название звучит как шутка разработчика, которому надоела ещё одна таблица. Зато развилка показывает точную задачу: политика открытой страницы и политика сопровождающего её cookie могут лежать в разных местах. Адрес в строке браузера говорит лишь о части маршрута.

Плану полагался срок годности. EXPIRY задавал время, в течение которого можно использовать файл ссылок или текст политики; без явного значения действовали 24 часа. При изменении правил сайт должен был сохранять прежние редакции и даты, относящиеся к ранее собранным данным. W3C объявил о P3P в тот же день. Таким образом браузеру понадобились адрес, порядок указателей, исключения и часы — прежде чем он дошёл до слов о конфиденциальности.