По этой заявке испрашивается приоритет предварительной заявки США, порядковый номер 61/428560 (номер дела у поверенного 007662.00005), поданной 30 декабря, 2010, включая ее одновременно поданные приложения; все из вышеупомянутого включается сюда по ссылке в его полноте.
Область техники, к которой относится изобретение
Аспекты раскрытия, в общем, относятся к администрированию, регулированию, управлению и/или аудиту аналитики и других данных, подлежащих сбору из терминала пользователя. В частности, различные аспекты раскрытия описывают признаки системы управления онлайновой конфиденциальностью.
Предшествующий уровень техники
Веб-страницы, в общем, пишутся на языке гипертекстовой разметки (HTML). Они пишутся с использованием элементов HTML, которые включают в себя "тэги", заключенные в угловые скобки; информация в тэге говорит веб-браузеру, как интерпретировать элемент HTML (например, как текст, для вставки изображения в веб-страницу, для исполнения сценария (скрипта), и т.д.). Эти тэги могут, среди других вещей, включать в себя или могут загружать сценарии на языках, таких как JavaScriptTM.
Тем временем, веб-аналитика является областью, в которой данные о потребителях (например, поведение потребителя, местоположение потребителя и т.д.) собираются и анализируются для многообразия целей. Чтобы получать данные для веб-аналитики, совокупность пользователей посещает веб-страницу и/или запускает приложение, которое предписывает некоторые программные инструкции исполняться. Обычно, для целей веб-аналитики данные собираются посредством многообразия механизмов, включая сюда установку файла cookie и/или посредством исполнения сценариев в документе HTML. Сценарии могут выполнять многообразие функций, включающих в себя захват переменных из объектной модели документа (DOM) и/или отправку назад запроса на изображение в сервер сбора данных, размещенный либо внутренним образом, либо внешним образом.
Программные инструкции для веб-аналитики, в общем, составляются и исполняются многообразием поставщиков, включая сюда OmnitureTM, GoogleTM, YahooTM и WebtrendsTM, среди других, чтобы иметь возможность захватывать данные, такие как моменты времени загрузки веб-страницы, "наведения указателя мыши" (т.е. перемещение мыши над конкретным объектом на веб-странице), и адрес IP стороны, запросившей страницу. Веб-страница средней сложности может включать в себя 5-10 тэгов со ссылкой на компьютерные сценарии, которые исполняются на серверах, управляемых разными поставщиками.
Когда маркетолог, назначенный управлять веб-аналитикой для организации, решает, что он/она хочет изменить код/тэги, чтобы измерять и анализировать другие признаки, процесс часто является трудоемким и проблемным. Во многих ситуациях, чтобы выполнить это обновление, маркетолог должен создать новую пользовательскую переменную в программных инструкциях, определить, чем новая переменная является, и определить какие данные модифицированный код должен захватывать для веб-страницы. Так как маркетолог, в общем, не является квалифицированным в том, как выполнять эти модификации, он должна связаться с ее подразделением информационных технологий (IT) или другим аналогичным агентством. Иногда, даже подразделение IT может не понимать адекватно синтаксис программных инструкций веб-аналитики, чтобы должным образом модифицировать код, особенно при условии, что несметное число поставщиков веб-аналитики, рекламодателей, социологических исследователей и маркетологов все имеют их собственный пользовательский компьютерный код для осуществления сбора данных для анализа. В других ситуациях, подразделение IT может не иметь соответствующей производительности, чтобы модифицировать код для развертывания в соответствии с планом (например, для предельного срока рекламной кампании, и т.д.). Эти проблемы только осложняются, когда веб-сайт клиента имеет много страниц и/или много разных типов программных инструкций для сбора различных данных о пользователе.
Некоторые инструменты веб-аналитики используют элемент изображения HTML и/или JavaScript для помощи в сборе данных аналитики. Передача данных аналитики может маскироваться как элемент изображения, который не добавляет элемент изображения в DOM веб-страницы. Вместо этого, элемент изображения поставщиком аналитики может быть предназначен для прозрачного изображения один пиксель на один пиксель в целях сбора данных, относящихся к посетителю веб-страницы. Например, атрибут "src" может устанавливаться на URL с добавленной строкой пар параметров имя-значение (например, www. hostname.com/theImage.gif?data=something&data2=someMoreData). Как только атрибут "src" устанавливается, браузер может пытаться определять местоположение и извлекать изображение в местоположении URL. Таким способом, данные аналитики могут получаться в удаленном сервере как эти пары имя-значение. Это является одним способом, часто используемым поставщиками веб-аналитики для сбора данных.
Некоторые компании могут передавать выполнение их веб-аналитики одному или более поставщикам третьей стороны (например, поставщикам веб-аналитики, инструменту "голос потребителя" (VOC), рекламным серверам, тестированию решений, инструментам таргетинга, инструментам "оплаты за клик" (PPC), аффилированным компаниям, занимающимся отслеживанием, и т.д.), которые специализируются на веб-аналитике, веб-рекламировании, и другим относящимся к Веб службам. Между тем, эти поставщики третьей стороны могут иметь контракт/работать с одним или более поставщиками четвертой стороны для помощи в сборе данных, отображении/выборе рекламных изображений, анализе собранных данных, и т.д. Например, поставщик четвертой стороны может исполнять код на веб-страницах компаний или собирать данные аналитики с веб-страниц. Этот поставщик четвертой стороны может быть неизвестным владельцу веб-сайта или может не быть проверенным в индустрии поставщиком. Некоторые поставщики четвертой стороны могут пренебрегать заголовками DNT (Не-Отслеживать), без ведома владельца/компании веб-сайта. В некотором случае, поставщик четвертой стороны может даже совместно использовать информацию, собранную о посетителях, с поставщиками пятой стороны, снова без ведома владельца/компании веб-сайта. Как таковые, данные могут собираться и распространяться от веб-сайта к доменам и поставщикам, неизвестным администратору веб-сайта. Конфиденциальность и другие проблемы (например, технические проблемы) могут возникать в регулировании, управлении и/или аудите распространения данных. Раскрытие пытается обеспечить систему управления онлайновой конфиденциальностью, которая, среди других вещей, обеспечивает возможность пользователям (например, директорам по конфиденциальности информации компании, и т.д.) более хорошо управлять/регулировать/администрировать данные потребителей и конфиденциальность.
Сущность изобретения
Аспекты раскрытия обращаются к одной или более из проблем, упомянутых выше, посредством раскрытия способов, машиночитаемых носителей и устройств для системы управления онлайновой конфиденциальностью и связанных систем. В одном примере, система может содействовать в администрировании, регулировании, управлении и/или аудите передачи собранных данных (например, веб-аналитики или других данных), собранных из терминала пользователя, во внешние серверы. Система управления конфиденциальностью может упрощать процесс, посредством которого пользователи (например, директоры по конфиденциальности информации (CPO), посетители веб-страницы и т.д.) могут осуществлять надзор над тем, кем и/или какая информация собирается для передачи в компьютерные серверы третьей стороны и четвертой стороны.
В одном примере в соответствии с аспектами раскрытия, раскрывается нетранзиторный (невременный) машиночитаемый носитель системы управления конфиденциальностью, хранящий код сценария, написанный на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно определенном объекте, при этом когда код сценария исполняется посредством процессора вычислительного устройства, расположенного удаленно от системы управления конфиденциальностью, код сценария предписывает удаленному вычислительному устройству выполнять множественные этапы. В некоторых примерах, этапы могут включать в себя один или более из этапов, здесь описанных. Например, удаленное вычислительное устройство может выполнять один или более этапов из: наблюдения в реальном времени, с использованием процессора, объектной модели документа веб-страницы, чтобы идентифицировать обновления объектной модели документа, которые вызывают модификацию унифицированного указателя ресурса, сохраненного в предварительно определенном объекте; сравнения в реальном времени, с использованием процессора, модифицированного унифицированного указателя ресурса с предварительно определенным списком значений; и/или блокировки в реальном времени, с использованием процессора, передачи данных веб-аналитики в сервер, ассоциированный с модифицированным унифицированным указателем ресурса, на основе сравнения. В дополнение, в некоторых примерах, удаленное вычислительное устройство также может выполнять один или более этапов из: определения, с использованием процессора, нового объекта, при этом новый объект является объектом-оболочкой, переопределяющим предварительно определенный объект; и/или создания нового объекта в объектной модели документа, с использованием процессора, при этом новый объект является сконфигурированным с возможностью хранить, по меньшей мере, унифицированный указатель ресурса. Один или более из этапов, описанных выше, может быть необязательным или может быть комбинированным с другими этапами. В некоторых примерах, этап наблюдения может включать в себя предписание процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в новом объекте.
В другом примере в соответствии с аспектами раскрытия, раскрыто компьютеризированное устройство, содержащее: процессор, сконфигурированный с возможностью передавать, по сети в удаленное вычислительное устройство, код сценария, написанный на языке программирования, в котором нет функциональности для переопределения функции setter первого атрибута в предварительно определенном объекте; и память, хранящую код сценария, который, когда исполняется посредством удаленного вычислительного устройства, предписывает удаленному вычислительному устройству выполнять множественные этапы. В некоторых примерах, этапы могут включать в себя один или более из этапов, здесь описанных. Например, удаленное вычислительное устройство может: определять новый объект, содержащий объект-оболочку, переопределяющий предварительно определенный объект, включая конфигурирование процессора удаленного вычислительного устройства, чтобы создавать, в памяти удаленного вычислительного устройства, новый объект вместо предварительно определенного объекта в ответ на запрос создания предварительно определенного объекта; выполнять проверку, с постоянным интервалом, на предмет обновлений второго атрибута, сохраненного в новом объекте, при этом второй атрибут ассоциирован с первым атрибутом, сохраненным в предварительно определенном объекте; сравнивать второй атрибут с предварительно определенным списком значений, в ответ на определение того, что второй атрибут, сохраненный в новом объекте, был обновлен посредством другого кода сценария, исполняющегося на удаленном вычислительном устройстве, при этом другой код сценария передается из удаленного сервера третьей стороны, отличного от компьютеризированного устройства; и/или блокировать другой код сценария от предписания удаленному вычислительному устройству посылать собранные данные, в ответ на сравнение второго атрибута с предварительно определенным списком значений. В дополнение, в некоторых примерах, собранные данные могут содержать данные веб-аналитики, предварительно определенный объект может быть объектом изображения языка гипертекстовой разметки, первый атрибут и второй атрибут могут быть сконфигурированными с возможностью хранить унифицированные указатели ресурса, и/или блокировка другого кода сценария может выполняться в реальном времени. Один или более из этапов, описанных выше, может быть необязательным или может быть скомбинирован с другими этапами. Дополнительно, в некоторых примерах в соответствии с аспектами раскрытия, предварительно определенный список значений может содержать, по меньшей мере, одно из: черного списка и белого списка, при этом другой код сценария может блокироваться в ответ на, по меньшей мере, одно из: определение, что второй атрибут нового объекта находится в черном списке, и определение, что второй атрибут нового объекта не находится в белом списке.
В еще другом примере в соответствии с аспектами раскрытия, раскрывается способ управления распространением данных веб-аналитики с использованием системы управления онлайновой конфиденциальностью. В некоторых примерах, способ может включать в себя один или более из этапов, здесь описанных. Например, способ может включать в себя один или более этапов из: приема страницы от удаленного сервера, соответствующего первому домену, при этом страница содержит, по меньшей мере, множество элементов, которые предписывают компьютерному процессору посылать данные в домен, отличный от первого домена; обработки, с использованием компьютерного процессора, первого элемента из множества элементов страницы, при этом первый элемент хранит первый унифицированный указатель ресурса, указывающий на сервер системы управления конфиденциальностью, хранящий код сценария для управления конфиденциальностью; отправки, с использованием компьютерного процессора, запроса в сервер системы управления конфиденциальностью на код сценария для управления конфиденциальностью; исполнения, с использованием компьютерного процессора, кода сценария для управления конфиденциальностью, чтобы, по меньшей мере, определять переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно определенный объект; обработки, с использованием компьютерного процессора, второго элемента из множества элементов после исполнения кода сценария для управления конфиденциальностью, при этом второй элемент сконфигурирован с возможностью предписывать создание предварительно определенного объекта, сконфигурированного с возможностью посылать данные в домен, отличный от первого домена и отличный от сервера системы управления конфиденциальностью; создания, в компьютерной памяти с использованием компьютерного процессора, переопределенного объекта вместо предварительно определенного объекта, соответствующего второму элементу, при этом переопределенный объект сконфигурирован с возможностью хранить, по меньшей мере, унифицированный указатель ресурса; сохранения в переопределенном объекте второго унифицированного указателя ресурса, принятого из второго элемента, при этом второй унифицированный указатель ресурса соответствует второму домену; создания, в компьютерной памяти с использованием компьютерного процессора, предварительно определенного объекта, при этом предварительно определенный объект является сконфигурированным с возможностью хранить, по меньшей мере, унифицированный указатель ресурса; предписания, посредством кода сценария для управления конфиденциальностью, компьютерному процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте; в ответ на определение, что унифицированный указатель ресурса переопределенного объекта был обновлен на второй унифицированный указатель ресурса, сравнения, посредством кода сценария для управления конфиденциальностью, второго унифицированного указателя ресурса, сохраненного в переопределенном объекте, с предварительно определенным списком доменов; в ответ на определение, что второй унифицированный указатель ресурса, сохраненный в переопределенном объекте, находится в предварительно определенном списке, блокировки, посредством кода сценария для управления конфиденциальностью, второго элемента от конфигурирования страницы на отправку собранных данных во второй унифицированный указатель ресурса, при этом собранные данные содержат данные веб-аналитики; и/или в ответ на определение, что второй унифицированный указатель ресурса, сохраненный в переопределенном объекте, не находится в предварительно определенном списке, обновления, посредством кода сценария для управления конфиденциальностью, унифицированного указателя ресурса, сохраненного в предварительно определенном объекте, на второй унифицированный указатель ресурса. В дополнение, в некоторых примерах, блокировка может выполняться в реальном времени и содержать один или более этапов из: модификации второго унифицированного указателя ресурса, чтобы очищать собранные данные; и/или сохранения модифицированного второго унифицированного указателя ресурса в предварительно определенном объекте. В некоторых примерах, компьютерный процессор может выполнять проверку на предмет обновлений второго унифицированного указателя ресурса переопределенного объекта с предварительно определенным интервалом, и не использовать модель автозапуска (fush). В дополнение, в некоторых примерах, второй элемент может быть тэгом сценария в языке гипертекстовой разметки и включать в себя четвертый унифицированный указатель ресурса, и способ может также включать в себя один или более этапов из: предписания, посредством второго элемента, обновления второго унифицированного указателя ресурса, сохраненного в переопределенном объекте, на четвертый унифицированный указатель ресурса, при этом четвертый унифицированный указатель ресурса находится в предварительно определенном списке доменов; записи в журнал второго унифицированного указателя ресурса, который соответствует второму домену; и/или записи в журнал в сочетании со вторым унифицированным указателем ресурса, по меньшей мере, четвертого унифицированного указателя ресурса. Один или более из этапов, описанных выше, может быть необязательным или может быть комбинированным с другими этапами. Дополнительно, в некоторых примерах, упомянутые два этапа записи в журнал могут включать в себя считывание трассировки стека с использованием компьютерного процессора, чтобы получать информацию для файла журнала.
В одном примере в соответствии с аспектами раскрытия, раскрывается машиночитаемый запоминающий носитель системы управления конфиденциальностью, хранящий машиноисполнимые инструкции, которые, когда исполняются посредством процессора вычислительного устройства, расположенного удаленно от системы управления конфиденциальностью, предписывают удаленному вычислительному устройству выполнять множественные этапы. В некоторых примерах, этапы могут включать в себя один или более из этапов, здесь описанных. Например, удаленное вычислительное устройство может выполнять один или более этапов, чтобы: определять переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно определенный объект, при этом переопределенный объект сконфигурирован с возможностью хранить, по меньшей мере, унифицированный указатель ресурса, при этом предварительно определенный объект является сконфигурированным с возможностью хранить, по меньшей мере, унифицированный указатель ресурса; и при этом определение переопределенного объекта конфигурирует процессор создавать, в памяти, переопределенный объект вместо предварительно определенного объекта в ответ на запрос создания предварительно определенного объекта; создавать, в памяти, предварительно определенный объект, при этом предварительно определенный объект ассоциирован с переопределенным объектом; предписывать процессору выполнять проверку на предмет обновления (например, с предварительно определенным интервалом, с использованием модели автозапуска и т.д.) унифицированного указателя ресурса, сохраненного в переопределенном объекте; сравнивать (например, в реальном времени) обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов, в ответ на определение, что унифицированный указатель ресурса переопределенного объекта был обновлен; и/или на основе результатов сравнения, выполнение одного из: (i) модифицировать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, чтобы удалять собранные данные и сохранять модифицированный обновленный унифицированный указатель ресурса в предварительно определенном объекте, и (ii) сохранять обновленный унифицированный указатель ресурса в предварительно определенном объекте. В некоторых примерах в соответствии с аспектами раскрытия, дополнительные этапы могут выполняться, чтобы: создавать, в памяти, переопределенный объект, в ответ на запрос создания предварительно определенного объекта; и/или сравнивать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов. Один или более из этапов, описанных выше, может быть необязательным или может быть скомбинирован с другими этапами. В одном примере, машиноисполнимые инструкции могут быть написанными на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно определенном объекте. Дополнительно, в некоторых примерах, модифицированный обновленный унифицированный указатель ресурса может быть частью обновленного унифицированного указателя ресурса, модифицированного с помощью устанавливаемого по умолчанию значения. В дополнение, в некоторых примерах, предварительно определенный список доменов может включать в себя белый список и/или черный список, и обновленный унифицированный указатель ресурса может сохраняться в предварительно определенном объекте на основе обновленного унифицированного указателя ресурса, который является частью белого списка и/или не частью черного списка.
В дополнение, в соответствии с аспектами раскрытия, способы, устройство и машиночитаемый носитель, здесь описанные, могут дополнительно включать в себя этапы, чтобы предписывать удаленному вычислительному устройству: определять переопределенный метод, переопределяющий предварительно определенный метод, при этом определение переопределенного метода конфигурирует процессор исполнять, посредством процессора, переопределенный метод вместо предварительно определенного метода в ответ на запрос исполнения предварительно определенного метода; предписывать процессору исполнять предварительно определенный метод после исполнения переопределенного метода (например, с использованием модифицированного унифицированного указателя ресурса в качестве входного параметра в предварительно определенный метод); принимать унифицированный указатель ресурса, соответствующий третьему домену, в качестве входного параметра в предварительно определенный метод, и при этом третий домен является отличным от домена, соответствующего серверу системы управления конфиденциальностью; сравнивать принятый унифицированный указатель ресурса с предварительно определенным списком доменов; и/или в ответ на определение, что сохраненный принятый унифицированный указатель ресурса находится в предварительно определенном списке, модифицировать сохраненный унифицированный указатель ресурса, чтобы удалять собранные данные. Один или более из этапов, описанных выше, может быть необязательным или может быть комбинированным с другими этапами. В некоторых примерах, предварительно определенный метод может быть методом конструктора, соответствующим элементу изображения в языке гипертекстовой разметки, и предварительно определенный метод может быть, по меньшей мере, одним из функции appendChild, функции insertBefore, функции replaceChild и функции записи.
В одном примере в соответствии с аспектами раскрытия, раскрывается машиночитаемый запоминающий носитель системы управления конфиденциальностью, хранящий машиноисполнимые инструкции, которые, когда исполняются посредством процессора вычислительного устройства, расположенного удаленно от системы управления конфиденциальностью, предписывают удаленному вычислительному устройству выполнять множественные этапы. В некоторых примерах, этапы могут включать в себя один или более из этапов, здесь описанных. Например, удаленное вычислительное устройство может выполнять один или более этапов, чтобы: отображать предварительно определенный список доменов, при этом предварительно определенный список сконфигурирован с возможностью поддерживать регулярные выражения с подстановочными знаками; генерировать графический пользовательский интерфейс, сконфигурированный с возможностью обеспечивать возможность обновлений предварительно определенного списка посредством добавления и удаления вхождений в предварительно определенном списке; посылать обновленный предварительно определенный список в сервер управления конфиденциальностью для сохранения; генерировать графический пользовательский интерфейс, содержащий средство ввода, сконфигурированное с возможностью разрешать код сценария для управления конфиденциальностью; посылать состояние средства ввода в сервер управления конфиденциальностью для сохранения; перед определением переопределенного объекта, определять, что код сценария для управления конфиденциальностью является блокированным; переконфигурировать процессор, чтобы более не создавать переопределенный объект вместо предварительно определенного объекта в ответ на запрос создания предварительно определенного объекта; переконфигурировать процессор, чтобы более не предписывать процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте; отображать список из одного или более доменов, обеспечивающих код сценария третьей стороны в удаленное вычислительное устройство, при этом код сценария третьей стороны сконфигурирован с возможностью предписывать удаленному вычислительному устройству посылать собранные данные в удаленный сервер; определять, что удаленный сервер является ассоциированным с доменом в черном списке; отображать домен в черном списке, который соответствует домену, обеспечивающему код сценария третьей стороны; отображать, сконфигурирован ли процессор удаленного вычислительного устройства с возможностью блокировать исполнение кода сценария третьей стороны; определять местоположение удаленного вычислительного устройства; идентифицировать правило конфиденциальности, соответствующее местоположению удаленного вычислительного устройства; и/или конфигурировать процессор, чтобы блокировать отправку собранных данных, когда правило конфиденциальности было удовлетворено. Один или более из этапов, описанных выше, может быть необязательным или может быть комбинированным с другими этапами.
Это краткое изложение сущности изобретения предоставлено, чтобы ввести подборку понятий в упрощенной форме, которые дополнительно описываются ниже в подробном описании. Не предполагается, что это краткое изложение сущности изобретения должно идентифицировать ключевые признаки или существенные признаки заявленного изобретения, и также не предполагается его использование для ограничения объема заявленного изобретения. Более того, один или более из этапов и/или компонентов, описанных выше, могут быть необязательными или могут быть скомбинированы с другими этапами.
Краткое описание фигур
Системы и способы иллюстрируются в качестве примера и не являются ограниченными в сопровождающих чертежах, на которых сходные ссылочные позиции показывают сходные элементы и на которых:
Фиг. 1 показывает иллюстративную рабочую среду, в которой могут осуществляться различные аспекты раскрытия;
Фиг. 2 является иллюстративной блок-схемой рабочих станций и серверов, которые могут использоваться, чтобы осуществлять обработку и функции некоторых аспектов раскрытия;
Фиг. 3 является иллюстративным графическим пользовательским интерфейсом, показывающим пиктограмму PMS-сертифицированной верификации и интерфейс диспетчера конфиденциальности в соответствии с различными аспектами раскрытия;
Фиг. 4 (на основе, среди прочего, Приложения B в предварительной заявке США, порядковый номер 61/428560) иллюстрирует иллюстративный графический пользовательский интерфейс для консоли управления конфиденциальностью и улучшенный редактор правил, в соответствии с различными аспектами раскрытия;
Фиг. 5A, 5B и 5C (все на основе, среди прочего, Приложения C в предварительной заявке США, порядковый номер 61/428560) иллюстрируют высокоуровневую диаграмму веб-страницы с многочисленными веб-поставщиками, включая сюда поставщиков третьей стороны и четвертой стороны, взаимодействующими с веб-страницей, в соответствии с различными аспектами раскрытия; и
Фиг. 6 иллюстрирует блок-схему последовательности операций способа, относящегося к системе управления онлайновой конфиденциальностью в соответствии с различными аспектами раскрытия.
Подробное описание
В последующем описании различных вариантов осуществления раскрытия, делается ссылка на сопровождающие чертежи, которые формируют его часть и на которых показаны в качестве иллюстрации, различные варианты осуществления, в которых раскрытие может использоваться на практике. Следует понимать, что могут использоваться другие варианты осуществления и могут делаться структурные и функциональные модификации.
Система управления конфиденциальностью (PMS) раскрывается для директора по конфиденциальности информации (CPO) или другого пользователя, чтобы использовать в, среди других вещей, наблюдении и/или управлении в реальном времени потоком данных (например, выходным потоком) о пользователе и его/ее онлайновом опыте. PMS может обеспечивать инструментальную панель, отображающую белый список и/или черный список, показывающие, какие пункты назначения/источники блокированы или разрешены. PMS включает в себя код сценария клиента браузера и может также включать в себя пиктограмму PMS-сертифицированной верификации для отображения на веб-страницах, которые наблюдаются/управляются в реальном времени посредством PMS.
Раскрываются системы и способы, направленные на этапы, выполняемые посредством приложения веб-браузера при взаимодействии с веб-страницей, которая наблюдается системой управления конфиденциальностью (PMS). Браузер может принимать страницу (например, страницу HTML), содержащую код сценария (например, Javascript), от множественных источников (т.е. сервера управления конфиденциальностью, поставщиков аналитики третьей стороны, поставщиков целевой рекламы третьей стороны, и т.д.). Браузер может исполнять код сценария, таким образом, предписывая множество элементов (например, тэги сценариев, тэги изображения, и т.д.) на странице посылать данные в разные домены. Код сценария может, в некоторых примерах, переопределять конкретные стандартные методы (например, метод appendChild) и методы конструктора для конкретных элементов страницы (например, элемента изображения). Переопределенный метод может исполняться в браузере (т.е. в устройстве пользователя), так что связь между браузером и конкретными доменами или поддоменами может блокироваться или разрешаться. В некоторых примерах, PMS может реализовывать правила, чтобы определять, блокировать ли или разрешать связь, или может полагаться на устанавливаемые по умолчанию правила. Результат наблюдения и управления посредством PMS может отображаться на (онлайновой) инструментальной панели для CPO или другого лица. PMS может генерировать сообщения в ответ на конкретные события (например, блокировку), происходящие в реальном времени.
В дополнение, раскрываются системы и способы, направленные на удаленный сервер, который обеспечивает код сценария, который исполняется, чтобы обеспечивать возможность PMS администрировать и управлять потоком (например, выходным потоком) данных. Код может включать в себя код Javascript, который переопределяет существующие методы Javascript и/или конструкторы для объектов Javascript, и указывается здесь как "переопределенный метод" или "переопределенный объект". Существующий метод или объект, который переопределяется, указывается здесь как "предварительно определенный метод" или "предварительно определенный объект".
В дополнение, раскрываются системы и способы, направленные на универсальную пиктограмму PMS-сертифицированной верификации, которая может обеспечиваться и отображаться на веб-странице, чтобы показывать, что веб-страница является согласующейся с конкретными политиками конфиденциальности. Пиктограмма может обеспечиваться посредством PMS и информация о предпочтениях/настройках конфиденциальности для реализации посредством PMS может храниться в системе PMS. Альтернативно, информация предпочтений/настроек конфиденциальности может храниться на устройстве клиента (например, в качестве файла cookie) или другом местоположении.
В соответствии с различными аспектами раскрытия, система управления конфиденциальностью (PMS) раскрывается для, среди других вещей, усиления управления над сбором данных потребителей и онлайновой конфиденциальностью. Директор по конфиденциальности информации (CPO), или любой заинтересованный в управлении сбором и распространением информации об онлайновом пользователе (например, веб-аналитика, интеллектуальный анализ данных, и т.д.) могут использовать PMS, чтобы наблюдать, собирать информацию о, докладывать о, и/или блокировать в реальном времени распространение данных о пользователях. В одном варианте осуществления PMS может использоваться в соединении с продуктом "Ensighten Manage"TM компании Ensighten для управления тэгами. В другом варианте осуществления аспекты PMS могут использоваться в соединении с другими продуктами веб-аналитики и/или управления тэгами, легко доступными на рынке, такими как продукты от ObservePointTM, GoogleTM, Site CatalystTM, и другими. В дополнение, PMS может обеспечивать инструментальную панель, отображающую белый список и/или черный список, показывающий какие пункты назначения/источники блокированы или разрешены. PMS включает в себя код сценария клиента браузера и может также включать в себя пиктограмму PMS-сертифицированной верификации для отображения на веб-страницах, которые наблюдаются/управляются в реальном времени посредством PMS.
Фиг. 1 описывает, среди других вещей, иллюстративную рабочую среду, в которой могут осуществляться различные аспекты раскрытия (например, см. Приложение A в предварительной заявке США, порядковый номер 61/428560). Фиг. 1 иллюстрирует блок-схему диспетчера 101 тэгов/контента (например, компьютерный сервер) в системе 100 связи, который может использоваться согласно иллюстративному варианту осуществления раскрытия. Диспетчер 101 может иметь процессор 103 для управления всей работой диспетчера 101 и его ассоциированными компонентами, включая сюда RAM 105, ROM 107, модуль 109 ввода/вывода и память 115.
I/O 109 может включать в себя микрофон, клавиатуру, сенсорный экран и/или перо, посредством которых пользователь устройства 101 может обеспечивать ввод, и может также включать в себя одно или более из громкоговорителя для обеспечения аудиовывода и устройство видеодисплея для обеспечения текстового, аудиовизуального и/или графического вывода. Программное обеспечение может храниться в памяти 115, чтобы обеспечивать инструкции в процессор 103 для обеспечения возможности диспетчеру 101 выполнять различные функции. Например, память 115 может хранить программное обеспечение, используемое диспетчером 101, такое как операционная система 117, прикладные программы 119 и ассоциированная база 121 данных. Процессор 103 и его ассоциированные компоненты могут обеспечивать возможность диспетчеру 101 исполнять последовательность машиночитаемых инструкций, чтобы развертывать программные инструкции согласно типу запроса, который принимает диспетчер. Например, если клиент запрашивает, чтобы исполнялись программные инструкции для захвата перемещений мыши для полного повторного воспроизведения сеанса, диспетчер 101 может передавать соответствующие инструкции в компьютер пользователя, когда этот пользователь посещает веб-сайт клиента.
Диспетчер 101 может работать в сетевой среде, поддерживающей соединения с одним или более удаленными компьютерами, такими как терминалы 141 и 151. Терминалы 141 и 151 могут быть персональными компьютерами или серверами, которые включают в себя многие или все из элементов, описанных выше относительно диспетчера 101. Альтернативно, терминал 141 и/или 151 может быть частью "облачной" вычислительной среды, расположенной вместе с или удалено от диспетчера 101 и к которой диспетчер 101 может осуществлять доступ. Сетевые соединения, изображенные на фиг. 1, включают в себя локальную сеть (LAN) 125 и глобальную сеть (WAN) 129, но могут также включать в себя другие сети. Когда используется в сетевой среде LAN, диспетчер 101 соединяется с LAN 125 посредством сетевого интерфейса или адаптера 123. Когда используется в сетевой среде WAN, сервер 101 может включать в себя модем 127 или другое средство для установления связи по WAN 129, такой как сеть 131 Интернет. Следует принять во внимание, что показанные сетевые соединения являются иллюстративными и могут использоваться другие средства установки линии связи между компьютерами. Предполагается существование любых из различных хорошо известных протоколов, таких как TCP/IP, Ethernet, FTP, HTTP и подобных.
Дополнительно, прикладная программа 119, используемая диспетчером 101, согласно иллюстративному варианту осуществления раскрытия может включать в себя машиноисполнимые инструкции для вызова функциональности, относящейся к доставке программных инструкций и/или контента.
Вычислительное устройство 101 и/или терминалы 141 или 151 также могут быть мобильными терминалами, включающими в себя различные другие компоненты, такие как аккумулятор, громкоговоритель и антенны (не показаны).
Раскрытие является работоспособным с многочисленными другими средами или конфигурациями вычислительных систем общего назначения или специального назначения. Примеры хорошо известных вычислительных систем, сред и/или конфигураций, которые могут быть подходящими для использования с раскрытием, включают в себя, но не ограничены этим, персональные компьютеры, серверные компьютеры, ручные или портативные устройства, многопроцессорные системы, микропроцессорные системы, приставки к телевизору, программируемую бытовую электронику, сетевые PC, миникомпьютеры, компьютеры-мэйнфреймы, и распределенные вычислительные среды, которые включают в себя любые из вышеуказанных систем или устройств, и подобное.
Раскрытие может описываться в общем контексте машиноисполнимых инструкций, таких как программные модули, которые исполняются посредством компьютера. В общем, программные модули включают в себя процедуры, программы, объекты, компоненты, структуры данных и т.д., которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Раскрытие также может использоваться на практике в распределенных вычислительных средах, где задачи выполняются посредством удаленных обрабатывающих устройств, которые связаны посредством сети связи. В распределенной вычислительной среде, программные модули могут располагаться как в локальных, так и в удаленных компьютерных запоминающих носителях, включающих в себя запоминающие хранящие устройства.
Ссылаясь на фиг. 2, эта фигура описывает иллюстративную блок-схему рабочих станций и серверов, которые могут использоваться, чтобы осуществлять обработку и функции некоторых аспектов раскрытия (например, см. Приложение A в предварительной заявке США, порядковый номер 61/428560). Фиг. 2 показывает иллюстративную систему 200 для осуществления способов согласно настоящему раскрытию. Как проиллюстрировано, система 200 может включать в себя одну или более рабочих станций 201. Рабочие станции 201 могут быть локальными или удаленными и соединяются посредством одной или более линий 202 связи с компьютерной сетью 203, которая связана посредством линий 205 связи с диспетчером 204 тэгов/контента. В некоторых вариантах осуществления, рабочие станции 201 могут быть разными запоминающими/вычислительными устройствами для хранения и доставки специальных для клиента программных инструкций или в других вариантах осуществления рабочие станции 201 могут быть пользовательскими терминалами, которые используются, чтобы осуществлять доступ к веб-сайту клиента и/или исполнять специальное для клиента приложение. В системе 200, диспетчер 204 может быть любым подходящим сервером, процессором, компьютером или устройством обработки данных или комбинацией перечисленного. Всюду в этом раскрытии, диспетчер 204 тэгов/контента будет использоваться, чтобы указывать как сервер/терминал, который хранит программные инструкции для управления тэгами/контентом, так и сами программные инструкции управления тэгами/контентом.
Компьютерная сеть 203 может быть любой подходящей компьютерной сетью, включающей в себя сеть Интернет, внутреннюю сеть, глобальную сеть (WAN), локальную сеть (LAN), беспроводную сеть, сеть цифровой абонентской линии (DSL), сеть ретрансляции кадров, сеть асинхронного режима передачи (ATM), виртуальную частную сеть (VPN) или любую комбинацию любого из перечисленного. Линии 202 и 205 связи могут быть любыми линиями связи, подходящими для осуществления связи между рабочими станциями 201 и сервером 204, такими как сетевые линии связи, коммутируемые линии связи, беспроводные линии связи, соединенные кабелем линии связи и т.д.
Этапы, которые следуют на фигурах, могут осуществляться посредством одного или более из компонентов на фиг. 1 и 2 и/или других компонентов, включая сюда другие вычислительные устройства.
Принимая в качестве примера продукт Ensighten ManageTM, чьи аспекты описаны в Приложении A предварительной заявки США, порядковый номер 61/428560, автор веб-страницы может включать код компании Ensighten (или другой аналогичный код 510A) (например, одиночную совместимую строку кода Javascript) наверху веб-страниц 502 на их серверах 504 веб-сайта. Этот код обеспечивает возможность управления контентом/тэгами, ассоциированными с веб-страницей. Например, продукт Ensighten ManageTM может использоваться, чтобы собирать данные аналитики о перемещении мыши посетителя веб-страницы над конкретным объектом (например, "наведении указателя мыши") и передавать эти данные в удаленный сервер (например, базу 506 данных компании Ensighten, базу 504 данных владельца веб-страницы или другие серверы 508) для хранения/анализа. Предполагая, что владелец веб-страницы управляет программным обеспечением управления тэгами, они напрямую управляют тем, какие данные собираются об их посетителях веб-страниц и куда эти данные распространяются. В таком сценарии, CPO может не нуждаться в том, чтобы PMS наблюдала и регулировала (например, блокировала) поток аналитических данных об их посетителях веб-сайта.
Однако некоторые компании могут передавать выполнение их веб-аналитики одному или более поставщикам 508A, 508B третьей стороны, которые специализируются на веб-аналитике, веб-рекламировании и других относящихся к Веб службах. Между тем, эти поставщики третьей стороны могут иметь контракт/работать с одним или более поставщиками 508C четвертой стороны для помощи в сборе данных, отображении/выборе рекламных изображений, анализе собранных данных и т.д. В примерах, проиллюстрированных на фиг. 5A, 5B, и 5C, поставщик четвертой стороны (например, "Ad Vendor X" 580C) может исполнять код 510B на веб-страницах 502 компаний или собирать данные аналитики с веб-страниц. Этот поставщик четвертой стороны может быть неизвестным владельцу веб-сайта. В таком сценарии, CPO может не иметь такого же контроля над сбором и потоком информации об их посетителях веб-сайта как в предыдущем сценарии. Более того, если возникает озабоченность в отношении конфиденциальности (например, в силу жалоб потребителей, в силу законов конфиденциальности в разных юрисдикциях и т.д.), CPO может не быть способным эффективно оценивать и регулировать (например, в реальном времени) выходной поток аналитических данных.
Базовая PMS для офлайнового аудита статических веб-страниц. В одном варианте осуществления PMS может использоваться, чтобы осуществлять аудит веб-сайта. PMS может осуществлять синтаксический разбор веб-страницы (например, HTML) и идентифицировать все элементы (например, тэги изображений, тэги Javascript, тэги FlashTM, тэги AppletTM и т.д.) на веб-странице. PMS может идентифицировать местоположение (например, URL, домен, поддомен), соответствующее этим элементам. Например, PMS, в таком примере, может идентифицировать домен, из которого исходят все элементы изображений (например, атрибут "src" тэга изображения HTML). Базовая инструментальная панель CPO (т.е. графический пользовательский интерфейс, который может отображаться на компьютерном экране) может идентифицировать различные доменные имена и идентифицировать, какой тип информации передается в эти домены. В другом примере, PMS, используемая, чтобы осуществлять аудит веб-сайта, также может проверять и анализировать методы PMS для подозрительных попыток при модификации и докладывать их (например, посредством инструментальной панели CPO). В некоторых вариантах осуществления, проверка и анализ также могут использовать в текущее время развернутую программу наблюдения Javascript, включающую в себя аспекты признаков, описанных в этом раскрытии. В еще других вариантах осуществления, PMS может выполнять прямые (или хешированные) сравнения выбранного кода методов PMS, чтобы проверять модификации. Проверки и/или анализ могут происходить в различные разные моменты времени, включая сюда в течение периодических выборочных проверок, и докладывать результаты соответственно.
В то время как этот подход является достаточным для базовой статической веб-страницы, где элементы HTML встроены в страницу, это может быть неадекватным, когда сценарий (например, код Javascript) динамически обновляет значения атрибутов элементов HTML на веб-странице и/или добавляет новые элементы к объектной модели документа (DOM) веб-страницы. В дополнение, PMS в этом примере выполняет свой аудит автономно (например, с использованием веб-поисковых агентов/роботов), и как таковая, является неспособной обеспечивать информацию реального времени о и управлять потоком данных от веб-страницы.
PMS для наблюдения в реальном времени и/или управления динамическими веб-страницами. В еще другом варианте осуществления, PMS может обеспечивать информацию реального времени о и управление потоком данных (например, данными аналитики веб-страницы) в и из веб-страницы 502 на веб-серверах 504 компании. Код сценария (например, код Javascript) может встраиваться в веб-страницу (например, наверху веб-страницы), чтобы обеспечивать возможность PMS взаимодействовать с DOM и другими аспектами веб-страницы. Такой код сценария может интегрироваться с существующими решениями управления тэгами или веб-аналитики. Например, этот код сценария может содержаться как часть кода 510A компании Ensighten наверху веб-страницы 502 согласно продукту Ensighten ManageTM.
Переопределение конкретных методов. Когда веб-страница загружается, код 510 сценария браузера-клиента системы PMS может исполняться на вычислительном устройстве 100 посетителя веб-сайта (например, персональном компьютере, портативном компьютере, смартфоне, планшете и т.д.). Обеспечивая, что этот код сценария (например, Javascript) исполняется перед исполнением кода внешних поставщиков (например, третьей стороны, четвертой стороны и т.д.), код 510A сценария браузера-клиента системы PMS может переопределять один или более методов Javascript, доступных в DOM веб-страницы. Как результат, по мере того, как последующие сценарии и элементы 510 страницы (например, тэги HTML) обрабатываются и воспроизводятся на веб-странице, переопределенные системой PMS методы Javascript исполняются вместо стандартных методов Javascript. В частности, может быть желательным переопределять те методы, которые могут давать результатом создание или добавление новых элементов в DOM. Например, в текущем стандарте Javascript, некоторые примеры таких методов включают в себя, но не ограничены этим, (1) appendChild, (2) insertBefore, (3) replaceChild и (4) методы записи.
Пример Javascript AppendChild(). Например, с методом AppendChild(), который добавляет узел после последнего дочернего узла введенного узла элемента, метод может переопределяться с помощью, по меньшей мере, следующих примерных 4 строк псевдокода:
Строка 0: Node.prototype._appendChild = Node.prototype.appendChild;
Строка 1: Node.prototype.appendChild = function(a) {
Строка 2: // код для наблюдения и регулировки метода appendChild
Строка 3: this._appendChild(a); };
В Строке 0, используется язык "Node.prototype", чтобы ссылаться на базовый класс, который, когда модифицируется, применяется ко всем элементам в DOM. Как таковой, "_appendChild" используется, чтобы хранить ссылку на исходный метод AppendChild(), который является частью стандарта Javascript. Затем, в Строке 1, исходный метод AppendChild() переопределяется с помощью нового, пользовательского кода в Строке 2 и Строке 3. Строка 3 вызывает исходную функцию AppendChild(), но перед тем, как эта функция вызывается, PMS может вставлять код для наблюдения и регулировки сценария, происходящего на веб-странице. В частности, этот код может обследовать элемент/объект "img" (изображения), который передается в метод AppendChild(), и обследовать его в отношении информации о том, какой тип данных аналитики собирается и куда эти данные должны посылаться. Например, если элемент "img" (изображения) был элементом изображения HTML (т.е. объектом), значение атрибута "src" может показывать доменное имя (например, URL с полным путем и именем файла) и другую информацию. Признак "домен" или "доменное имя" используется здесь, чтобы указывать, по обстановке, на полный URL ресурса или сокращенную форму URL.
Функциональность белого списка и черного списка. В дополнение, в некоторых вариантах осуществления, пользовательский код в Строке 2 может включать в себя сравнение доменного имени с известными дружественными и/или враждебными доменами. Например, доменное имя может сравниваться с белым списком 406 (т.е. дружественными сайтами) и черным списком 408 (т.е. враждебными сайтами). (См. фиг. 6, ссылочная позиция 610). Сравнение может осуществляться посредством прямого сравнения, посредством сравнения, включающего в себя регулярные выражения, или комбинации упомянутых двух. Сравнение может включать в себя одно или более, или ничего из: хоста домена, пути, файла, параметров запроса, хеша или поля заголовка HTTP (например, поля агента пользователя, поля реферера и/или поля cookie), или другого параметра. Белый список (и черный список) могут включать в себя регулярные выражения с подстановочными знаками в комбинации с доменным именем, поддоменными именами или подобное. В дополнение, черный список (или альтернативно, белый список) может включать в себя устанавливаемое по умолчанию выражение, чтобы показывать, что все неузнанные доменные имена должны блокироваться. CPO может, посредством онлайновой инструментальной панели или подобного (см. фиг. 4), сохранять те домены, которые должны включаться в белый список 406 и/или черный список 408. В некоторых примерах, конкретные сайты, пользующиеся дурной славой за неавторизованное отслеживание, могут автоматически добавляться (или предлагаться для добавления) в черный список. Например, база данных поставщиков (например, рекламных серверов 508C, поставщиков веб-аналитики и т.д.), которые известны как несовместимые с нормами конфиденциальности (например, местными нормативными актами, иностранными нормативными актами и/или требованиями DNT), могут использоваться системой управления конфиденциальностью, чтобы заполнять черный список соответственно.
В тех случаях, когда элемент, пытающийся добавиться в DOM веб-страницы, не является авторизованным (т.е. домен, с которым он осуществляет связь, находится в черном списке, или он не находится в белом списке и устанавливаемая по умолчанию настройка состоит в том, чтобы блокировать неузнанные домены), PMS может, в реальном времени, блокировать добавление элемента в DOM. Соответственно, в Строку 2 выше может включаться код, чтобы делать требуемое сравнение и затем реагировать соответственно. Например, если элемент должен блокироваться, значение атрибута "src" элемента/объекта "img" (изображения) может очищаться до вызова метода "appendChild" в Строке 3. (См. фиг. 6, ссылочная позиция 616). Альтернативно, метод "appendChild" в Строке 3 может пропускаться полностью. В еще другой альтернативе, элемент может добавляться, но модифицированным (например, с использованием устанавливаемого по умолчанию значения) так, чтобы аннулировать его способность сбора данных (например, посредством очищения значений любых собранных данных аналитики, подлежащих сохранению в элементе/объекте). Например, очищение значений собранных данных могут включать в себя модификацию/очищение/удаление пар имя-значение, добавленных к URL. (См. фиг. 6, ссылочная позиция 618). Специалист в данной области техники после обзора полноты, здесь раскрытой, должен понимать, что, по меньшей мере, одно преимущество одного или более из вышеупомянутых примеров состоит в том, что PMS может выполнять наблюдение в реальном времени и блокировку/разрешение передачи информации (например, веб-аналитики) в конкретные домены/указатели URL. Такое наблюдение в реальном времени может обеспечивать возможность для мгновенного управления/регулирования распространения веб-аналитики без того, чтобы полагаться на аудит постфактум офлайновых веб-страниц.
Дополнительные функциональности доклада системы PMS. В дополнение к обеспечению онлайновой инструментальной панели 400 директора CPO, в соединении с PMS также могут использоваться другие способы доклада. Например, сообщение SMS (или другой тип сообщения, например, сообщение электронной почты SMTP, речевое сообщение, сообщение интерактивной переписки службы обмена мгновенными сообщениями и т.д.), может генерироваться и посылаться к CPO (или другому лицу, или вычислительной системе) в ответ на то, что домен из черного списка пытается собирать и/или передавать данные аналитики на веб-сайте компании. В другом варианте осуществления конкретные типы данных могут помечаться флагом, так что, когда внешние сценарии клиентской стороны пытаются вызывать конкретные методы, ассоциированные с чувствительными конфиденциальными пользовательскими данными, то может генерироваться предупреждение в реальном времени (или отсроченное). Например, если сценарий внешней стороны пытается вызвать метод, чтобы прочитать уникальный идентификатор устройства (UDID) устройства смартфона (или другой уникальный идентификатор браузера или пользователя), сообщение может автоматически генерироваться и посылаться к CPO. В дополнение, доклад 402 может генерироваться и посылаться (например, посредством электронной почты) к CPO на регулярной (например, еженедельно, ежемесячно, ежесуточно и т.д.) основе, идентифицируя доменные имена, которые пытаются собирать данные аналитики с веб-сайта компании, и типы аналитических данных.
Способы применения оболочек для методов, для которых переопределение запрещено. Хотя настоящие стандарты Javascript разрешают переопределять некоторые методы, такие как "appendChild", упомянутый язык запрещает переопределять другие методы. Например, атрибут "src" элемента изображения устанавливается с использованием функции "setter", которую Javascript в текущее время не позволяет переопределять коду сценария браузера-клиента системы PMS. Авторизованный поставщик 508A третьей стороны может включать Javascript в веб-страницу компании, который изменяет значение "src" на неавторизованный домен 508C четвертой стороны, и PMS, которая полагается единственно на переопределение методов и офлайновый аудит, может потерпеть неудачу в поимке нарушения политики конфиденциальности.
В дополнение, в некоторых случаях, передача данных аналитики может маскироваться как элемент изображения, который не добавляется в DOM веб-страницы. Вместо этого, элемент изображения может быть для прозрачного изображения один пиксель на один пиксель от провайдера аналитики в целях сбора данных, относящихся к посетителю веб-страницы. Например, атрибут "src" может устанавливаться на URL с добавленной строкой пар параметров имя-значение (например, www.hostname.com/theImage.gif?data=something&data2=someMoreData). Как только атрибут "src" устанавливается, браузер может пытаться определять местоположение и извлекать изображение в местоположении URL. Таким способом, данные аналитики могут получаться в удаленном сервере как эти пары имя-значение. Следовательно, переопределение метода, используемого, чтобы добавлять этот элемент изображения к веб-странице, или инспектирование DOM может быть неадекватным для PMS, чтобы наблюдать и управлять (например, разрешать или блокировать) выходным потоком данных аналитики. Хотя элемент изображения был здесь описан в качестве примера одного способа для сбора и передачи информации из вычислительного устройства в удаленный сервер, раскрытие предусматривает, что могут использоваться другие элементы/объекты, и способы и/или системы, здесь описанные, могут аналогично применяться к этим другим.
Поэтому, в дополнение к переопределению этих требуемых методов, которые возможно переопределять, в некоторых вариантах осуществления, PMS может включать в себя нетранзиторный машиночитаемый носитель, хранящий код сценария (например, код сценария браузера-клиента), чтобы создавать оболочку для методов, доступных для элемента/объекта изображения HTML. Специалист в данной области техники должен принимать во внимание после обзора полноты, здесь раскрытой, что для других методов/объектов (например, элементов) могут создаваться "оболочки" (т.е. указываемые как переопределенные в различных примерах в этом раскрытии) таким образом, чтобы преодолевать запрет (т.е. вследствие отсутствия функциональности в языке сценариев) на переопределение некоторых методов.
Например, элемент изображения HTML создается в Javascript 510B с использованием конструктора изображений. Этот конструктор может быть переопределен. Однако в дополнение к переопределению метода конструктора, код 510A сценария браузера-клиента системы PMS включает в себя таймер (или эквивалентный механизм), который запускается с постоянными интервалами (например, 50 мс, и т.д.), чтобы инспектировать значения атрибутов элемента изображения. (См. фиг. 6, ссылочная позиция 606). В частности, может наблюдаться значение атрибута "src", чтобы определять, модифицировал ли код Javascript (или другой код) 510B значение атрибута. (См. фиг. 6, ссылочная позиция 608). В альтернативном варианте осуществления, с предположением, что лежащая в основе платформа 100, исполняющая код сценария, обеспечивает функциональность, триггер может основываться не на модели повторяющегося интервала (или опроса), но вместо этого на модели "автозапуска", которая автоматически запускается при обнаружении изменения в значении атрибута. (См. фиг. 6, ссылочная позиция 606). Такая модель может быть аналогичной тому, как работает модель запросов аппаратных прерываний (IRQ) или как работает основанная на событиях программа с моделью источник-приемник сообщений (например, шаблон взаимодействия с автоматическим инициированием).
В вышеупомянутом примере, определение того, было ли значение атрибута модифицировано, может делаться посредством кода сценария браузера-клиента системы PMS, сравнивающего извлеченное значение атрибута с сохраненным значением атрибута. (См. фиг. 6, ссылочная позиция 608). Сохраненное значение может получаться, когда вызывается исходный конструктор изображения. Когда определяется, что значение атрибута изменилось, код сценария браузера-клиента системы PMS может инспектировать обновленное значение и другую относящуюся информацию, чтобы решать, разрешать ли обновленное значение. (См. фиг. 6, ссылочная позиция 612). В одном примере, код сценария системы PMS может держать значение атрибута одним и тем же. В других примерах, PMS может сравнивать новое значение с белым списком 406 и/или черным списком 408, чтобы определять, разрешать ли обновленное значение. (См. фиг. 6, ссылочная позиция 612). В еще другом примере, значение атрибута "src" может изменяться на устанавливаемое по умолчанию значение (например, URL, соответствующий нейтральному, прозрачному изображению) вместо нового значения. (См. фиг.6, ссылочная позиция 616). Фактически, PMS может условно держать исходную ссылку изображения, синхронизированной с новым объектом изображения, созданным с помощью способа "применения оболочек", который переопределяет конструктор изображений. (См. фиг. 6, ссылочные позиции 614 и 618).
В одном примере в соответствии с раскрытием, код Javascript может осуществлять аспекты примера, обеспечиваемые, по меньшей мере, следующими примерными строками псевдокода, направленными на элемент изображения. Специалист в данной области техники после обзора полноты, здесь раскрытой, должен понимать, что раскрытие не ограничено только элементом изображения HTML, и может применяться к другим элементам в объектной модели документа (DOM), так же как к другим объектам вне DOM:
Строка 0: (function(scope) {
Строка 1: var ImageRef = scope.Image; scope.Image = function(a,b) {
Строка 2: var THIS = this, image, eventHandlers =
['Abort','Error','KeyDown','KeyPress','KeyUp','load'], exclude = { children:", childNodes:", outerHTML:"}, excludeMethods = {naturalHeight:", naturalWidth:"};
Строка 3: image = new ImageRef(a,b);
Строка 4: // код здесь предназначен, чтобы делать, чтобы объект, который возвращается переопределенным конструктором системы PMS (т.е. "THIS"), выглядел в точности, как объект изображения, который возвращает исходная реализация;
Строка 5: // код здесь предназначен, чтобы создавать пустые функции на объекте изображения системы PMS для всех обработчиков событий (например, onLoad, и т.д.), перечисленных в "eventHandlers" в Строке 3, так что эти методы обработчиков событий могут наблюдаться и управляться;
Строка 6: setInterval(function() {
Строка 7: for (p in THIS) { if ((THIS[p] !== image[p]) && (THIS[p] !== undefined) && !(p in excludeMethods)) { try { if (p == 'src') {
Строка 8: // код для наблюдения и регулирования атрибута src элемента изображения;
Строка 9: } image [p] = THIS [p]; THIS[p] = image[p];...
Ссылаясь на строку 0 в этом примере, создается новая функция, которая передает глобальную область действия Javascript (т.е. "окно") в функцию. В Строке 1, исходная функция конструктора изображения сохраняется в переменной "ImageRef", затем функция конструктора для элемента изображения переопределяется. (См. фиг. 6, ссылочная позиция 602). Входные параметры "a" и "b" могут необязательно обеспечивать ширину и высоту, соответственно, изображения. В Строке 2, индивидуальная переменная "THIS" показывает, какие eventHandlers (обработчики событий) должны наблюдаться и какие методы в элементе/объекте изображения могут исключаться.
Ссылаясь на Строку 3 примерного кода в этом примере, хотя метод ImageRef() вызывается с двумя входными параметрами, условный код (например, предложения if-else) может быть включен сюда, чтобы в необязательном порядке вызывать метод ImageRef() с либо одним входным параметром, либо без входных параметров. Такой условный код может быть полезным, среди других вещей, когда требуются меньше, чем два необязательных входных параметра. В Строке 4, может использоваться цикл "for", чтобы копировать все из свойств элемента/объекта исходного изображения в объект, созданный оболочкой. (См. фиг. 6, ссылочная позиция 604). В Строке 5, в оболочке устанавливаются обработчики событий для наблюдения. В Строке 6, определяется функция, которая будет многократно исполняться с постоянным интервалом. (См. фиг. 6, ссылочная позиция 606). В этом случае, псевдокод пропускает конечную скобку ("}") для setInterval() и то, что вызов принимает величину времени (например, 50 мс) для каждого интервала.
В Строке 7, код инспектирует те атрибуты изображения, которые являются интересными для PMS. (См. фиг. 6, ссылочная позиция 608). В частности, в Строке 8, если атрибут, который анализируется, является атрибутом "src" объекта изображения, то PMS может реагировать согласно правилам конфиденциальности. Например, как объяснено выше по отношению к Строке 2 примера псевдокода AppendChild(), значение атрибута "src" может проверяться (например, сравниваться) с белым списком и/или черным списком, также как другие возможные действия/правила. (См. фиг. 6, ссылочная позиция 608). Если PMS определяет, что никакое нарушение конфиденциальности происходить не будет, то фактическая синхронизация предварительно определенного объекта (например, объекта 514 изображения) и соответствующего переопределенного объекта (например, объекта-оболочки 512 изображения) происходит в Строке 9. (См. фиг. 6, ссылочные позиции 612 и 614).
Специалист в данной области техники после обзора полноты, здесь раскрытой, должен понимать, что строки псевдокода, представленные выше, являются только перефразированием кода и/или функциональности, достигаемой кодом. Одна или более строк кода могут быть пропущенными в представлении упрощенного примера выше.
Идентификация преступника третьей стороны за доступом четвертой стороны. Ссылаясь на вышеописанный пример по отношению к наблюдению элемента изображения, Строка 2 может также включать в себя вызов функции logStack() (или соизмеримой функции), чтобы определять, какой конкретный код Javascript пытался создать элемент/объект изображения или обновить атрибут "src" элемента изображения. Такая информация может обеспечивать возможность CPO идентифицировать, какой сценарий третьей стороны является ответственным за данные, которые посылаются, в дополнение к идентификации того, чем являются данные, которые посылаются вовне. В некоторых вариантах осуществления, функция logStack() работает посредством создания объекта типа "Ошибка" и снятия данных из него. Объект "Ошибка" может содержать трассировку стека, которая включает в себя информацию о том, откуда исходил вызов на создание или модификацию элемента/объекта изображения. В то время как эта функция может использоваться в некоторых вариантах осуществления в соответствии с раскрытием, она может пропускаться в некоторых вариантах осуществления, где специальные для браузера ограничения могут предотвращать надлежащий доступ к объекту "Ошибка". PMS может, в некоторых примерах, идентифицировать поставщика, ответственного за нарушение политики конфиденциальности, на инструментальной панели CPO, в дополнение к отображению другой информации. Это раскрытие также предусматривает трассировку стека (или соизмеримый журнал), которая захватывается другими способами. Например, могут обследоваться свойства "arguments.caller" или свойства "Function.caller" в методе logStack (или соизмеримой функции) вместо, или в дополнение к, обследованию объекта Ошибка, как описано выше.
Инструментальная панель директора по конфиденциальности информации. Фиг. 4 является иллюстративным графическим пользовательским интерфейсом 400 для инструментальной панели CPO. Аспекты инструментальной панели 404 обеспечивают возможность создания правил конфиденциальности для авторизации или блокировки прямого доступа к данным аналитики, собранным из веб-страницы. Например, инструментальная панель CPO может обеспечивать возможность CPO (или другому пользователю) создавать правила конфиденциальности, которые предписывают PMS блокировать конкретные типы собираемых данных посетителя от отправки к поставщикам на основе местоположения посетителя, на основе того, является ли пользовательский терминал мобильным или стационарным терминалом, или другого параметра. Например, иностранные (например, Германии) нормативные акты относительно конфиденциальности могут требовать, чтобы никакие (или никакие из конкретного типа) данные посетителя не посылались к поставщикам. Инструментальная панель CPO может конфигурировать 410 PMS обнаруживать местоположение посетителя веб-сайта (например, посредством обратного геокодирования адреса IP посетителя, чтобы идентифицировать местоположение посетителя) и чтобы впоследствии блокировать любые попытки передавать данные, собранные о пользователе, к конкретным поставщикам (например, поставщикам третьей стороны, поставщикам четвертой стороны и т.д.). Специалист в данной области техники должен понимать после обзора полноты, здесь раскрытой, что многочисленная другая информация и функциональности могут отображаться/быть доступными на инструментальной панели CPO. Например, инструментальная панель 402 CPO может отображать имя атрибута и значение параметров имя-значение атрибутов "src" изображения. Это может помогать директорам CPO в определении того, какие типы данных собираются и посылаются о посетителях их веб-страниц. По меньшей мере, одно техническое преимущество предыдущего примера состоит в том, что одиночная PMS, в соответствии с различными аспектами раскрытия, может использоваться для всех всемирных посетителей и осуществлять регулирование на основе различных параметров, таких как местоположение посетителя веб-сайта и нормативные акты относительно конфиденциальности, специальные для того местоположения. Более того, PMS может регулироваться на основе других параметров и признаков, очевидных для специалиста в данной области техники после обзора полноты, здесь раскрытой, включая сюда любые материалы (например, заявление о раскрытии информации), представленные параллельно с подачей этого раскрытия.
Переключатель включения/выключения наблюдения инструментальной панели CPO. В дополнение, в некоторых вариантах осуществления в соответствии с раскрытием, инструментальная панель CPO может включать в себя средство ввода (например, графический переключатель включения/выключения), чтобы обеспечивать возможность CPO переключать (например, выключать, включать, включать частично) состояние функциональности PMS, если требуется производительность веб-сайта за счет управления онлайновой конфиденциальностью в реальном времени. В ответ на средство ввода, переменная (например, переменная булевского типа) в коде Javascript может обновляться, чтобы активировать или деактивировать код PMS. Как таковые, когда переключатель находится в положении выключено, веб-страницы могут воспроизводиться без взаимодействия/анализа посредством кода Javascript системы PMS. Состояние средства ввода (например, выключено, включено, включено частично и т.д.) может посылаться в удаленный сервер для сохранения и легкого извлечения в более позднее время.
PMS-сертифицированная верификация. Фиг. 3 иллюстрирует веб-браузер, отображающий веб-страницу (пропущена), который принял сертификацию от PMS, что веб-страница/веб-сайт находится в соответствии с политиками конфиденциальности. Например, пиктограмма 304 иллюстрирует пиктограмму, которая может появляться на веб-странице 502, чтобы показывать посетителям веб-страницы, что веб-страница была верифицирована (например, PMS-сертифицированная верификация) и наблюдается с использованием PMS, которая в некоторых вариантах осуществления может быть в соответствии с различными аспектами раскрытия. Графическая пиктограмма 304 может быть выбираемой и при ее выборе может отображаться диалоговое окно 302. Диалоговое окно 302 может обеспечивать возможность посетителю дополнительно настраивать его/ее установки/предпочтения конфиденциальности. Например, пользователь может отказаться от выполняемых отслеживания и целевой рекламы (например, пользователь, при подтверждении возраста, может быть отстранен от конкретных типов (или даже всех) отслеживания в соответствии с законами конфиденциальности в отношении детей, так как пользователь является ребенком ниже конкретного возраста). При выборе настройки, предпочтения пользователя могут передаваться в удаленный сервер (например, прикладной сервер 506 компании Ensighten), чтобы сохраняться и ассоциироваться с пользователем. Ассоциация может создаваться с использованием файлов cookie на стороне браузера. Например, файл cookie на стороне браузера может сохраняться в устройстве 100 посетителя с информацией, которая разрешает PMS автоматически обнаруживать предпочтение пользователя при будущих посещениях.
Компании могут заключать соглашения с PMS для наблюдения и управления сбором и распространением их данных аналитики. Как результат, на веб-страницах 502 компании может отображаться пиктограмма 304. Более того, посредством кода сценария браузера-клиента системы PMS (например, кода Javascript) PMS может обнаруживать и считывать файлы cookie уровня сети Интернет. Например, при посещении разных веб-сайтов, PMS может быть способной использовать основанный на файлах cookie подход, чтобы автоматически реализовывать предпочтение пользователя на всех сайтах (например, как только подтверждено, что возраст пользователя ниже конкретного возраста, настройки cookie пользователя могут помогать в автоматическом отстранении пользователя от отслеживания и других действий на других веб-сайтах). Специалист в данной области техники должен понимать после обзора полноты, здесь раскрытой, что предполагаются многочисленные модификации раскрытой базовой концепции. Например, пиктограмма 304 может отображаться в разных цветах, чтобы показывать разные уровни управления конфиденциальностью. Пиктограмма может отображаться главным образом в красном, чтобы показывать, что веб-сайт работает при настройках конфиденциальности вне порога комфорта, ранее назначенного пользователем. Тем временем, пиктограмма может отображаться главным образом в зеленом, чтобы показывать, что управление конфиденциальностью находится в соответствии с предпочтениями пользователя. В дополнение, инструментальная панель, аналогичная инструментальной панели CPO, может делаться доступной пользователю через выбор пиктограммы 304. Как таковой, пользователь может быть способным идентифицировать и понимать, какие аспекты их онлайнового опыта наблюдаются и куда эта информация посылается.
Дополнительные функциональности
PMS, предполагаемая этим раскрытием, включает в себя код на языке Javascript, но специалист в данной области техники после обзора полноты, здесь раскрытой, должен понимать, что в дополнение к или вместо Javascript может использоваться код, написанный на других языках программирования. Многочисленные подробные примеры в раскрытии используют Javascript просто в качестве примера языка сценариев, который обеспечивает возможность динамического обновления элементов на веб-странице и возможности переопределения функций. Раскрытие предусматривает, что Javascript может в один день перестать быть предпочитаемым в силу предпочтения других языков сценариев клиентской стороны (и стороны сервера), и раскрытая PMS не является этим ограниченной. Специалист в данной области техники должен принимать во внимание, что Javascript может заменяться другими языками программирования и технологиями (например, DHTML 5.0 и элементы полотна/видео). В одном примере, может осуществляться динамическое манипулирование объектами Adobe FlashTM (ранее Macromedia Flash), встроенными в веб-страницу, с использованием ActionScriptTM, языка, аналогичного Javascript в том, что он также основывается на стандарте ECMAScript. Это раскрытие предусматривает варианты осуществления, где объекты Flash могут наблюдаться с использованием способов, которые должны быть очевидными для специалиста в данной области техники после обзора полноты, здесь раскрытой. Например, ресурсы изображений, объекты картинок и объекты кнопок могут иметь методы, переопределенные или наследованные, чтобы обеспечивать аналогичную функциональность, как здесь описано. Аналогично, другие не-Javascript технологии, такие как SilverlightTM также могут использоваться в соответствии с различными аспектами раскрытия.
В дополнение, различные аспекты примеров, здесь проиллюстрированных, пользуются преимуществом текущей версии Javascript и возможностей, которые она предоставляет. Например, спецификация Javascript в текущее время не обеспечивает возможность переопределения метода "setter" атрибута "src" элемента изображения HTML. Если будущие версии Javascript будут обеспечивать возможность переопределять вышеупомянутый метод, специалист в данной области техники должен понимать после обзора полноты, здесь раскрытой, что раскрытием предполагается соответствующая регулировка раскрытых признаков PMS. Например, опрос, который в текущее время раскрыт для наблюдения атрибутов элемента/объекта изображения может заменяться переопределяющим методом. Альтернативно, если для конкретного элемента в Javascript становится доступной функциональность уведомления изменения значения, это раскрытие предусматривает, что эта функциональность может использоваться вместо (или в соединении со) способа опроса, в текущее время описанным в одном варианте осуществления.
Дополнительно, текущие технологии веб-аналитики используют элементы изображения, чтобы передавать собранные данные от устройства пользователя в удаленный сервер. Однако это раскрытие предусматривает другие способы для передачи собранных данных (например, данных аналитики) в удаленный сервер. Например, может использоваться WebsocketsTM, чтобы создавать открытое прямое соединение TCP/IP с удаленным сервером, чтобы передавать данные аналитики. Специалист в данной области техники должен понимать после обзора полноты, здесь раскрытой, что PMS может переопределять метод, ответственный за создание (например, добавление, модификацию, обновление и/или регулировку) Websockets, и применять принципы, здесь раскрытые, соответственно.
Аспекты раскрытия здесь описываются в терминах его иллюстративных вариантов осуществления. Многочисленные другие варианты осуществления, модификации и изменения в пределах объема и сущности изложенного раскрытия будут появляться для специалистов в данной области техники из рассмотрения этого раскрытия. Например, специалист в данной области техники должен принимать во внимание, что этапы, проиллюстрированные на иллюстративных фигурах и здесь описанные, могут выполняться в другом, нежели изложенный, порядке и что один или более иллюстративных этапов могут быть необязательными в соответствии с аспектами изобретения.
название | год | авторы | номер документа |
---|---|---|---|
АССОЦИИРОВАНИЕ ИНФОРМАЦИИ С ЭЛЕКТРОННЫМ ДОКУМЕНТОМ | 2006 |
|
RU2406129C2 |
ОПТИМИЗИРОВАННАЯ ДЛЯ ПАКЕТНОЙ ОБРАБОТКИ АРХИТЕКТУРА ВИЗУАЛИЗАЦИИ И ВЫБОРКИ | 2014 |
|
RU2659481C1 |
СПОСОБЫ И СИСТЕМЫ ОБРАБОТКИ ОБЪЕКТНЫХ МОДЕЛЕЙ ДОКУМЕНТОВ (DOM) ДЛЯ ОБРАБОТКИ ВИДЕОКОНТЕНТА | 2010 |
|
RU2475832C1 |
БРОКЕР И ПРОКСИ ОБЕСПЕЧЕНИЯ БЕЗОПАСТНОСТИ ОБЛАЧНЫХ УСЛУГ | 2014 |
|
RU2679549C2 |
Способ записи, редактирования и воссоздания компьютерного сеанса | 2018 |
|
RU2733919C2 |
УЛУЧШЕНИЕ ПРОИЗВОДИТЕЛЬНОСТИ ВЕБ-ДОСТУПА | 2015 |
|
RU2689439C2 |
Система и способ обнаружения модификации веб-ресурса | 2018 |
|
RU2702081C2 |
Способ определения неизвестных атрибутов фрагментов веб-данных при запуске веб-страницы в браузере | 2018 |
|
RU2697960C1 |
ОПТИМИЗИРОВАННЫЙ ПРОЦЕСС ВИЗУАЛИЗАЦИИ В БРАУЗЕРЕ | 2014 |
|
RU2665920C2 |
Система и способ шифрования при передаче веб-страницы приложению пользователя | 2015 |
|
RU2614928C1 |
Изобретение относится к области управления онлайновой конфиденциальностью. Техническим результатом является повышение защиты данных. Раскрыта система управления конфиденциальностью (PMS) для директора по конфиденциальности информации (CPO) или другого пользователя, чтобы использовать в наблюдении и/или управлении в реальном времени потоком данных (например, выходным потоком) о пользователе и его/ее онлайновом опыте. PMS может обеспечивать инструментальную панель, отображающую белый список и/или черный список, показывающие, какие пункты назначения/источники блокированы или разрешены. PMS включает в себя код сценария клиента браузера и может также включать в себя пиктограмму PMS-сертифицированной верификации для отображения на веб-страницах, которые наблюдаются/управляются в реальном времени посредством PMS. 8 н. и 35 з.п. ф-лы, 8 ил.
1. Способ управления распространением данных веб-аналитики с использованием системы управления онлайновой конфиденциальностью, при этом способ содержит этапы, на которых:
принимают страницу от удаленного сервера, соответствующего первому домену, при этом страница содержит, по меньшей мере, множество элементов, которые предписывают компьютерному процессору посылать данные в домен, отличный от первого домена;
обрабатывают, с использованием компьютерного процессора, первый элемент из упомянутого множества элементов страницы, при этом первый элемент хранит первый унифицированный указатель ресурса, указывающий на сервер системы управления конфиденциальностью, хранящий код сценария для управления конфиденциальностью;
отправляют, с использованием компьютерного процессора, запрос в сервер системы управления конфиденциальностью на код сценария для управления конфиденциальностью;
исполняют, с использованием компьютерного процессора, код сценария для управления конфиденциальностью, чтобы, по меньшей мере, задавать переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно заданный объект;
обрабатывают, с использованием компьютерного процессора, второй элемент из упомянутого множества элементов после исполнения кода сценария для управления конфиденциальностью, при этом второй элемент сконфигурирован вызывать создание предварительно заданного объекта, сконфигурированного посылать данные в домен, отличный от первого домена и отличный от сервера системы управления конфиденциальностью;
создают, в компьютерной памяти с использованием компьютерного процессора, переопределенный объект вместо предварительно заданного объекта, соответствующего второму элементу, при этом переопределенный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса;
сохраняют в переопределенном объекте второй унифицированный указатель ресурса, принятый из второго элемента, при этом второй унифицированный указатель ресурса соответствует второму домену;
создают, в компьютерной памяти с использованием компьютерного процессора, предварительно заданный объект, при этом предварительно заданный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса;
предписывают, посредством кода сценария для управления конфиденциальностью, компьютерному процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте;
в ответ на определение того, что унифицированный указатель ресурса переопределенного объекта был обновлен на второй унифицированный указатель ресурса, сравнивают, посредством кода сценария для управления конфиденциальностью, второй унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов;
в ответ на определение того, что второй унифицированный указатель ресурса, сохраненный в переопределенном объекте, находится в предварительно определенном списке, блокируют, посредством кода сценария для управления конфиденциальностью, второй элемент от конфигурирования страницы на отправку собранных данных во второй унифицированный указатель ресурса, при этом собранные данные содержат данные веб-аналитики; и
в ответ на определение того, что второй унифицированный указатель ресурса, сохраненный в переопределенном объекте, не находится в предварительно определенном списке, обновляют, посредством кода сценария для управления конфиденциальностью, унифицированный указатель ресурса, сохраненный в предварительно заданном объекте, на второй унифицированный указатель ресурса.
2. Способ по п.1, в котором первый элемент является тэгом сценария в языке гипертекстовой разметки, при этом предварительно заданный объект соответствует элементу изображения в языке гипертекстовой разметки, при этом страница является динамически генерируемой веб-страницей, организованной как объектная модель документа, при этом код сценария написан на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно заданном объекте, и при этом код сценария включает в себя, по меньшей мере, одно из кода Javascript для веб-аналитики, кода Javascript для управления рекламой и кода сценария для сбора данных о пользователях.
3. Способ по п.1, в котором исполнение кода сценария для управления конфиденциальностью дополнительно содержит задание переопределенного метода, переопределяющего предварительно заданный метод, при этом способ дополнительно содержит этапы, на которых:
обрабатывают, с использованием компьютерного процессора, третий элемент из упомянутого множества элементов после исполнения кода сценария для управления конфиденциальностью, при этом третий элемент сконфигурирован вызывать исполнение предварительно заданного метода;
принимают третий унифицированный указатель ресурса, соответствующий третьему домену, при этом третий унифицированный указатель ресурса является входным параметром в предварительно заданный метод, и при этом третий домен является отличным от первого домена и отличным от сервера системы управления конфиденциальностью;
исполняют переопределенный метод вместо предварительно заданного метода, соответствующего третьему элементу;
сравнивают, посредством кода сценария для управления конфиденциальностью, третий унифицированный указатель ресурса с предварительно определенным списком доменов; и
в ответ на определение того, что сохраненный третий унифицированный указатель ресурса находится в предварительно определенном списке, блокируют, посредством кода сценария для управления конфиденциальностью, третий элемент от конфигурирования страницы на отправку собранных данных в третий унифицированный указатель ресурса.
4. Способ по п.3, в котором страница является веб-страницей, организованной как объектная модель документа, и при этом предварительно заданный метод является по меньшей мере одним из: функции appendChild, функции insertBefore, функции replaceChild и функции записи.
5. Способ по п.1, в котором блокировка выполняется в реальном времени и содержит модификацию второго унифицированного указателя ресурса для очистки собранных данных и сохранение модифицированного второго унифицированного указателя ресурса в предварительно заданном объекте.
6. Способ по п.1, в котором компьютерный процессор выполняет проверку на предмет обновлений второго унифицированного указателя ресурса переопределенного объекта с предварительно определенным интервалом, не используя модель автозапуска.
7. Способ по п.1, в котором второй элемент является тэгом сценария в языке гипертекстовой разметки и включает в себя четвертый унифицированный указатель ресурса, при этом способ дополнительно содержит этапы, на которых:
вызывают, посредством второго элемента, обновление второго унифицированного указателя ресурса, сохраненного в переопределенном объекте, на четвертый унифицированный указатель ресурса, при этом четвертый унифицированный указатель ресурса находится в предварительно определенном списке доменов;
записывают в журнал второй унифицированный указатель ресурса, который соответствует второму домену; и
записывают в журнал, в сочетании со вторым унифицированным указателем ресурса, по меньшей мере, четвертый унифицированный указатель ресурса.
8. Способ по п.7, в котором упомянутые два этапа записи в журнал включают в себя считывание трассировки стека с использованием компьютерного процессора, чтобы получать информацию для файла журнала.
9. Невременный машиночитаемый носитель, хранящий машиноисполняемые инструкции, которые при их исполнении процессором удаленного вычислительного устройства предписывают удаленному вычислительному устройству:
задавать переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно заданный объект, при этом переопределенный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса, при этом предварительно заданный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса; и при этом задание переопределенного объекта конфигурирует процессор создавать, в памяти, переопределенный объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
создавать, в памяти, предварительно заданный объект, при этом предварительно заданный объект ассоциирован с переопределенным объектом;
предписывать процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте;
сравнивать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов в ответ на определение того, что унифицированный указатель ресурса переопределенного объекта был обновлен;
на основе результатов сравнения, выполнять одно из:
(i) модификации обновленного унифицированного указателя ресурса, сохраненного в переопределенном объекте, чтобы удалять собранные данные и сохранять модифицированный обновленный унифицированный указатель ресурса в предварительно заданном объекте, и
(ii) сохранения обновленного унифицированного указателя ресурса в предварительно заданном объекте;
генерировать графический пользовательский интерфейс, содержащий средство ввода, сконфигурированное разрешать код сценария для управления конфиденциальностью;
посылать состояние средства ввода в сервер управления конфиденциальностью для сохранения;
перед заданием переопределенного объекта определять, что код сценария для управления конфиденциальностью является блокированным;
переконфигурировать процессор, чтобы более не создавать переопределенный объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта; и
переконфигурировать процессор, чтобы более не предписывать процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте.
10. Машиночитаемый носитель по п.9, при этом предварительно определенный список доменов является черным списком, и подэтап (ii) выполняется на основе упомянутого сравнения, когда обновленный унифицированный указатель ресурса не является частью черного списка, и дополнительно хранящий машиноисполняемые инструкции, которые при их исполнении процессором предписывают удаленному вычислительному устройству:
отображать список из одного или более доменов, обеспечивающих код сценария третьей стороны в удаленное вычислительное устройство, при этом код сценария третьей стороны сконфигурирован предписывать удаленному вычислительному устройству посылать собранные данные в удаленный сервер;
определять, что удаленный сервер ассоциирован с доменом в черном списке; и
отображать домен в черном списке, который соответствует домену, обеспечивающему код сценария третьей стороны; и
отображать, сконфигурирован ли процессор удаленного вычислительного устройства блокировать исполнение кода сценария третьей стороны.
11. Невременный машиночитаемый носитель, хранящий машиноисполняемые инструкции, которые при их исполнении процессором удаленного вычислительного устройства предписывают удаленному вычислительному устройству:
задавать переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно заданный объект, при этом переопределенный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса, при этом предварительно заданный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса; и при этом задание переопределенного объекта конфигурирует процессор создавать, в памяти, переопределенный объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
создавать, в памяти, предварительно заданный объект, при этом предварительно заданный объект ассоциирован с переопределенным объектом;
предписывать процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте;
сравнивать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов в ответ на определение того, что унифицированный указатель ресурса переопределенного объекта был обновлен;
на основе результатов сравнения, выполнять одно из:
(i) модификации обновленного унифицированного указателя ресурса, сохраненного в переопределенном объекте, чтобы удалять собранные данные и сохранять модифицированный обновленный унифицированный указатель ресурса в предварительно заданном объекте, и
(ii) сохранения обновленного унифицированного указателя ресурса в предварительно заданном объекте;
определять местоположение удаленного вычислительного устройства;
идентифицировать правило конфиденциальности, соответствующее местоположению удаленного вычислительного устройства; и
конфигурировать процессор, чтобы блокировать отправку собранных данных, когда правило конфиденциальности удовлетворено.
12. Невременный машиночитаемый носитель, хранящий машиноисполняемые инструкции, которые при их исполнении процессором удаленного вычислительного устройства предписывают удаленному вычислительному устройству:
задавать переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно заданный объект, при этом переопределенный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса, при этом предварительно заданный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса; и при этом задание переопределенного объекта конфигурирует процессор создавать, в памяти, переопределенный объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
создавать, в памяти, предварительно заданный объект, при этом предварительно заданный объект ассоциирован с переопределенным объектом;
предписывать процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте;
сравнивать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов в ответ на определение того, что унифицированный указатель ресурса переопределенного объекта был обновлен;
на основе результатов сравнения, выполнять одно из:
(i) модификации обновленного унифицированного указателя ресурса, сохраненного в переопределенном объекте, чтобы удалять собранные данные и сохранять модифицированный обновленный унифицированный указатель ресурса в предварительно заданном объекте, и
(ii) сохранения обновленного унифицированного указателя ресурса в предварительно заданном объекте;
задавать переопределенный метод, переопределяющий предварительно заданный метод, при этом определение переопределенного метода конфигурирует процессор исполнять переопределенный метод вместо предварительно заданного метода в ответ на запрос исполнения предварительно заданного метода;
предписывать процессору исполнять предварительно заданный метод после исполнения переопределенного метода;
принимать унифицированный указатель ресурса, соответствующий третьему домену, в качестве входного параметра в предварительно заданный метод, при этом третий домен является отличным от домена, соответствующего серверу системы управления конфиденциальностью;
сравнивать принятый унифицированный указатель ресурса с предварительно определенным списком доменов; и
в ответ на определение того, что сохраненный принятый унифицированный указатель ресурса находится в предварительно определенном списке, модифицировать сохраненный унифицированный указатель ресурса, чтобы удалять собранные данные.
13. Машиночитаемый носитель по п.12, в котором предписание процессору исполнять предварительно заданный метод дополнительно содержит использование модифицированного унифицированного указателя ресурса в качестве входного параметра в предварительно заданный метод.
14. Машиночитаемый носитель по п.12, при этом предварительно заданный метод является методом конструктора, соответствующим элементу изображения в языке гипертекстовой разметки, и при этом предварительно заданный метод является по меньшей мере одним из функции appendChild, функции insertBefore, функции replaceChild и функции записи.
15. Невременный машиночитаемый носитель сервера системы управления конфиденциальностью, хранящий машиноисполняемые инструкции, которые при их исполнении процессором удаленного вычислительного устройства предписывают удаленному вычислительному устройству:
осуществлять доступ к объектной модели, при этом объектная модель включает в себя предварительно заданный объект, который сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса и посылать данные аналитики в устройство третьей стороны;
задавать переопределенный объект, при этом переопределенный объект является объектом-оболочкой, переопределяющим предварительно заданный объект, при этом переопределенный объект сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса, и при этом задание переопределенного объекта конфигурирует процессор создавать, в памяти, переопределенный объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
создавать, в памяти, предварительно заданный объект, при этом предварительно заданный объект ассоциирован с переопределенным объектом;
выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте;
сравнивать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, с предварительно определенным списком доменов, в ответ на определение того, что унифицированный указатель ресурса переопределенного объекта был обновлен;
модифицировать обновленный унифицированный указатель ресурса, сохраненный в переопределенном объекте, чтобы удалять собранные данные и сохранять модифицированный обновленный унифицированный указатель ресурса в предварительно заданном объекте в ответ на первый результат сравнения; и
сохранять обновленный унифицированный указатель ресурса в предварительно заданном объекте в ответ на второй результат сравнения.
16. Машиночитаемый носитель по п.15, в котором машиноисполняемые инструкции написаны на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно заданном объекте.
17. Машиночитаемый носитель по п.15, при этом модифицированный обновленный унифицированный указатель ресурса является частью обновленного унифицированного указателя ресурса, модифицированного с помощью устанавливаемого по умолчанию значения.
18. Машиночитаемый носитель по п.15, при этом предварительно определенный список доменов является белым списком, и второй результат сравнения достигается, когда обновленный унифицированный указатель ресурса является частью белого списка.
19. Машиночитаемый носитель по п.15, при этом предварительно определенный список доменов является черным списком, и второй результат сравнения достигается, когда обновленный унифицированный указатель ресурса не является частью черного списка.
20. Машиночитаемый носитель по п.15, при этом предварительно определенный список доменов содержит черный список и белый список, и второй результат сравнения достигается, когда истинно по меньшей мере одно из следующего: обновленный унифицированный указатель ресурса является частью белого списка и обновленный унифицированный указатель ресурса не является частью черного списка.
21. Машиночитаемый носитель по п.15, при этом сравнение выполняется в реальном времени.
22. Машиночитаемый носитель по п.15, при этом компьютерный процессор выполняет проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте, с предварительно определенным интервалом, не используя модель автозапуска.
23. Машиночитаемый носитель по п.15, при этом компьютерный процессор выполняет проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в переопределенном объекте, с использованием модели автозапуска.
24. Машиночитаемый носитель по п.15, дополнительно хранящий машиноисполняемые инструкции, которые при их исполнении процессором предписывают удаленному вычислительному устройству:
отображать предварительно определенный список доменов, при этом предварительно определенный список сконфигурирован поддерживать регулярные выражения с подстановочными знаками;
генерировать графический пользовательский интерфейс, сконфигурированный обеспечивать возможность обновлений предварительно определенного списка посредством добавления и удаления записей в предварительно определенном списке; и
посылать обновленный предварительно определенный список в сервер управления конфиденциальностью для сохранения.
25. Вычислительное устройство, содержащее:
процессор, сконфигурированный передавать, по сети в удаленное компьютерное устройство, код сценария, написанный на языке программирования, в котором нет функциональности для переопределения функции setter первого атрибута в предварительно заданном объекте; и
память, хранящую код сценария, который при его исполнении удаленным компьютерным устройством, предписывает удаленному компьютерному устройству:
осуществлять доступ к объектной модели, при этом объектная модель включает в себя предварительно заданный объект, который сконфигурирован посылать данные аналитики в удаленный сервер третьей стороны, отличный от вычислительного устройства;
задавать новый объект, содержащий объект-оболочку, переопределяющий предварительно заданный объект, включая конфигурирование процессора удаленного компьютерного устройства, чтобы создавать, в памяти удаленного компьютерного устройства, новый объект вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
выполнять проверку, с постоянным интервалом, на предмет обновлений второго атрибута, сохраненного в новом объекте, при этом второй атрибут ассоциирован с первым атрибутом, сохраненным в предварительно заданном объекте;
сравнивать второй атрибут с предварительно определенным списком значений в ответ на определение того, что второй атрибут, сохраненный в новом объекте, был обновлен посредством другого кода сценария, исполняющегося на удаленном компьютерном устройстве, причем этот другой код сценария передается из удаленного сервера третьей стороны; и
блокировать упомянутый другой код сценария от предписания удаленному компьютерному устройству посылать собранные данные, в ответ на сравнение второго атрибута с предварительно определенным списком значений.
26. Устройство по п.25, в котором собранные данные содержат данные веб-аналитики, при этом предварительно заданный объект является объектом изображения языка гипертекстовой разметки, при этом первый атрибут и второй атрибут сконфигурированы хранить унифицированные указатели ресурса, и при этом блокировка другого кода сценария выполняется в реальном времени.
27. Устройство по п.25, в котором предварительно определенный список значений содержит по меньшей мере одно из черного списка и белого списка; и при этом упомянутый другой код сценария блокируется в ответ на по меньшей мере одно из определения того, что второй атрибут нового объекта находится в черном списке, и определения того, что второй атрибут нового объекта не находится в белом списке.
28. Невременный машиночитаемый носитель системы управления конфиденциальностью, хранящий код сценария, написанный на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно заданном объекте, при этом, когда код сценария исполняется процессором вычислительного устройства, расположенного удаленно от системы управления конфиденциальностью, код сценария предписывает удаленному вычислительному устройству выполнять этапы, содержащие:
доступ к объектной модели веб-страницы, при этом объектная модель включает в себя предварительно заданный объект, который сконфигурирован посылать данные аналитики в устройство третьей стороны;
создание, с использованием процессора, объекта-оболочки вместо предварительно заданного объекта в ответ на запрос создания предварительно заданного объекта;
наблюдение в реальном времени, с использованием процессора, объекта-оболочки, чтобы идентифицировать обновления объектной модели, которые вызывают модификацию унифицированного указателя ресурса, сохраненного в предварительно заданном объекте;
сравнение в реальном времени, с использованием процессора, модифицированного унифицированного указателя ресурса с предварительно определенным списком значений; и
блокировку в реальном времени, с использованием процессора, передачи данных аналитики в устройство третьей стороны, ассоциированное с модифицированным унифицированным указателем ресурса, на основе упомянутого сравнения.
29. Невременный машиночитаемый носитель по п.28, при этом объект-оболочка сконфигурирован хранить, по меньшей мере, унифицированный указатель ресурса; и
при этом наблюдение включает в себя предписание процессору выполнять проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в объекте-оболочке.
30. Невременный машиночитаемый носитель сервера системы управления конфиденциальностью, хранящий машиноисполняемые инструкции, которые при их исполнении процессором удаленного вычислительного устройства предписывают удаленному вычислительному устройству:
осуществлять доступ к объектной модели документа (DOM) веб-страницы, при этом DOM сконфигурирована включать в себя предварительно заданный объект изображения, который сконфигурирован посылать данные аналитики в устройство третьей стороны с использованием унифицированного указателя ресурса, сохраненного в предварительно заданном объекте изображения;
в ответ на запрос создания предварительно заданного объекта изображения, создавать, в памяти, объект-оболочку изображения вместо предварительно заданного объекта изображения посредством сохранения функции конструктора объекта изображения в переменной;
создавать заменяющий предварительно заданный объект изображения внутри объекта-оболочки изображения и устанавливать атрибуты заменяющего предварительно заданного объекта изображения так, чтобы они соответствовали атрибутам предварительно заданного объекта изображения;
устанавливать обработчики событий объекта-оболочки изображения;
наблюдать атрибуты заменяющего предварительно заданного объекта изображения с использованием обработчиков событий, чтобы обнаруживать, что унифицированный указатель ресурса заменяющего предварительно заданного объекта изображения изменен;
сравнивать унифицированный указатель ресурса с предварительно определенным списком доменов в ответ на обнаружение того, что унифицированный указатель ресурса был изменен;
модифицировать унифицированный указатель ресурса и сохранять модифицированный унифицированный указатель ресурса в предварительно заданном объекте изображения в ответ на первый результат сравнения;
сохранять унифицированный указатель ресурса в предварительно заданном объекте изображения в ответ на второй результат сравнения; и
конфигурировать DOM веб-страницы с помощью предварительно заданного объекта изображения.
31. Невременный машиночитаемый носитель по п.30, дополнительно хранящий машиноисполняемые инструкции, которые при их исполнении процессором предписывают удаленному вычислительному устройству исключать один или более методов объекта-оболочки.
32. Невременный машиночитаемый носитель по п.31, в котором исключение упомянутых одного или более методов объекта-оболочки включает в себя исключение метода для добавления данных аналитики в предварительно заданный объект изображения.
33. Невременный машиночитаемый носитель по п.31, в котором упомянутые один или более методов объекта-оболочки предварительно задаются внутри машиноисполняемых инструкций.
34. Невременный машиночитаемый носитель по п.30, при этом объект-оболочка изображения создается с такими же параметрами ширины и высоты, что и предварительно заданный объект изображения.
35. Невременный машиночитаемый носитель по п.30, в котором установка атрибутов заменяющего предварительно заданного объекта изображения содержит исполнение цикла for, чтобы копировать атрибуты предварительно заданного объекта изображения в заменяющий предварительно заданный объект изображения.
36. Невременный машиночитаемый носитель по п.30, дополнительно хранящий машиноисполняемые инструкции, которые при их исполнении процессором предписывают удаленному вычислительному устройству вызывать функцию внутри объекта-оболочки изображения, чтобы идентифицировать сценарий, который пытался обновить атрибут предварительно заданного объекта.
37. Невременный машиночитаемый носитель по п.30, в котором машиноисполняемые инструкции написаны на языке программирования, в котором нет функциональности для переопределения функции setter переменной, соответствующей унифицированному указателю ресурса, сохраненному в предварительно заданном объекте.
38. Невременный машиночитаемый носитель по п.30, при этом модифицированный унифицированный указатель ресурса является частью измененного унифицированного указателя ресурса, модифицированного с помощью устанавливаемого по умолчанию значения.
39. Невременный машиночитаемый носитель по п.30, при этом предварительно определенный список доменов содержит черный список и белый список, и второй результат сравнения достигается, когда истинно по меньшей мере одно из следующего: измененный унифицированный указатель ресурса является частью белого списка и измененный унифицированный указатель ресурса не является частью черного списка.
40. Невременный машиночитаемый носитель по п.30, при этом сравнение выполняется в реальном времени.
41. Невременный машиночитаемый носитель по п.30, при этом компьютерный процессор выполняет проверку на предмет изменений унифицированного указателя ресурса, сохраненного в объекте-оболочке, с предварительно определенным интервалом, не используя модель автозапуска.
42. Невременный машиночитаемый носитель по п.30, при этом компьютерный процессор выполняет проверку на предмет обновлений унифицированного указателя ресурса, сохраненного в объекте-оболочке, с использованием модели автозапуска.
43. Невременный машиночитаемый носитель по п.30, дополнительно хранящий машиноисполняемые инструкции, которые при их исполнении процессором предписывают удаленному вычислительному устройству:
генерировать графический пользовательский интерфейс, сконфигурированный обеспечивать возможность обновлений предварительно определенного списка посредством добавления и удаления записей в предварительно определенном списке; и
посылать обновленный предварительно определенный список в сервер управления конфиденциальностью для сохранения.
Колосоуборка | 1923 |
|
SU2009A1 |
US 7614002 B2, 03.11.2009 | |||
US 7689665 B2, 30.03.2010 | |||
Топчак-трактор для канатной вспашки | 1923 |
|
SU2002A1 |
RU 2009105135 A, 20.08.2010 |
Авторы
Даты
2015-05-10—Публикация
2011-12-29—Подача