Способ (варианты) и система (варианты) анонимной авторизации на сервисе пользователя

Иллюстрации

Показать все

Изобретение относится к системе первого веб-сервиса для анонимной авторизации пользователя сервиса, который обладает учетной записью, связанной с системой первого веб-сервиса. Технический результат – улучшения контроля за доступом к данным, связанным с учетной записью пользователя в системе базового веб-сервиса и расположенным в памяти системы базового веб-сервиса. Для этого способ включает в себя: получение запроса на авторизацию от электронного устройства пользователя сервиса, причем запрос на авторизацию содержит данные, идентифицирующие учетную запись пользователя сервиса; создание на основе данных, связанных с учетной записью пользователя сервиса, метки, содержащей первые данные для анонимной авторизации пользователя сервиса и вторые данные для идентификации действия, которое пытается выполнить система второго веб-сервиса для пользователя сервиса; хранение в постоянном машиночитаемом носителе системы первого веб-сервиса по меньшей мере одного из первых и вторых данных этой метки; и передачу созданной метки системе второго веб-сервиса. Выполняемый на компьютере способ выполняется системой второго веб-сервиса, система второго веб-сервиса также описана. 4 н. и 38 з.п. ф-лы, 6 ил.

Реферат

ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ

[01] Настоящее решение относится к компьютерным системам и способам анонимной авторизации пользователя сервиса, который обладает учетной записью, связанной с системой веб-сервиса.

УРОВЕНЬ ТЕХНИКИ

[02] Последние разработки в области систем веб-сервисов и, конкретнее, систем сервисов социальных сетей, таких как Facebook™, позволяют системе базового веб-сервиса взаимодействовать с системой внешнего веб-сервиса, который является внешним по отношению к системе базового веб-сервиса. Подобные системы внешнего веб-сервиса могут также называться системами стороннего веб-сервиса. Механизмы, которые позволяют системе базового веб-сервиса взаимодействовать с системой стороннего веб-сервиса, развивались и включают в себя, например, возможность позволять пользователю авторизоваться в системе стороннего веб-сервера путем предоставления своего логина, связанного с системой базового веб-сервиса. В подобном случае, после того как пользователь авторизовался в системе стороннего веб-сервиса, устанавливается канал связи между системой стороннего веб-сервиса и системой базового веб-сервиса. Канал связи позволяет системе стороннего веб-сервиса получить доступ к данным, связанным с учетной записью пользователя, расположенной в системе базового веб-сервиса. Патент US 8,504,910 (опубликовано 6 авг. 2013) описывает варианты осуществления подобного канала связи. Конкретнее, в патенте US 8,504,910 описан, как сервер запроса интерфейса программирования (API) позволяет одному или нескольким внешним веб-сайтам получать доступ к информации от систем социальных сетей путем обращения к одному или нескольким API. Например, в ответ на запрос API, сервер запроса API собирает данные, связанные с пользователем, и связывает собранные данные с внешним веб-сайтом.

[03] Несмотря на то что существующие механизмы позволяют системе базового веб-сервиса взаимодействовать с системой стороннего веб-сервиса (например, механизм, описанный в заявке US 8,504,910), улучшают пользовательский опыт путем упрощения взаимодействия между системой базового веб-сервиса и системой стороннего веб-сервиса, остается необходимость улучшений, и конкретные улучшения направлены на контроль за доступом к данным, связанным с учетной записью пользователя в системе базового веб-сервиса, эти данные расположены в памяти системы базового веб-сервиса.

РАСКРЫТИЕ ИЗОБРЕТЕНИЯ

[04] В некоторых случаях желательно ограничить или избежать предоставления данных, связанных с учетной записью пользователя системы базовой веб-сервиса, системе стороннего веб-сервиса. Например, пользователь сервиса может стараться улучшить контроль за обменом данных, относящихся к персональной информации, которая связана с его учетной записью в системе базового веб-сервиса, подобные данные хранятся в памяти системы базового веб-сервиса. Проблема лучшего контроля за обменом данными, которые относятся к персональной информации, может быть важной в тех случаях, где система базового веб-сервиса взаимодействует с одной или несколькими системами сторонних веб-сервисов, о которых пользователь может не быть осведомлен и/или которым пользователь может не доверять до той же степени, что и системе базового веб-сервиса.

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

[06] Таким образом, одним объектом решения является компьютерный способ анонимной авторизации пользователя сервиса, у которого есть учетная запись, связанная с системой первого веб-сервиса, способ выполняется процессором системы второго веб-сервиса, причем система второго веб-сервиса отличается от системы первого веб-сервиса, и способ включает в себя:

- получение метки, созданной системой первого веб-сервиса в ответ на авторизацию запроса, исходящего от электронного устройства пользователя сервиса, причем метка включает в себя первые данные, которые анонимно авторизуют пользователя сервиса, и вторые данные, идентифицирующие действие, которое система второго веб-сервиса авторизована выполнить для пользователя сервиса;

- хранение в постоянном машиночитаемом носителе системы второго веб-сервиса первых и вторых данных этой метки;

- получение доступа по меньшей мере к первым и вторым данных этой метки в ответ на попытку системы второго веб-сервиса выполнить действие, связанное с пользователем сервиса; и

- определение на основе по меньшей мере одних из первых и вторых данных метки, является ли система второго веб-сервиса авторизованной выполнять действия для пользователя сервиса.

[07] В некоторых вариантах, после определения того, что система второго веб-сервиса авторизована выполнять действие для пользователя сервиса, способ включает создание данных, связанных с действием, выполненным системой второго веб-сервиса.

[08] В некоторых вариантах осуществления, способ включает передачу одному из системы первого веб-сервиса и электронного устройства данных, связанных с действием, выполненным системой второго веб-сервиса.

[09] В некоторых вариантах осуществления, определение того, является ли система второго веб-сервиса авторизованной выполнять действие для пользователя сервиса, включает предоставление авторизации для выполнения действия системой второго веб-сервиса, если действие, которое пытается выполнить система второго веб-сервиса, соответствует действию, определенному вторыми данными метки.

[10] В некоторых других вариантах осуществления, определение того, является ли система второго веб-сервиса авторизованной выполнять действие для пользователя сервиса, включает в себя отказ в авторизации для выполнения действия системой второго веб-сервиса, если действие, которое пытается выполнить система второго веб-сервиса, не соответствует действию, определенному вторыми данными метки.

[11] В некоторых вариантах осуществления, после определения того, что система второго веб-сервиса не авторизована для выполнения действия для пользователя сервиса, способ дополнительно включает в себя:

- передачу от системы второго веб-сервиса системе первого веб-сервиса указания на то, что действие для пользователя сервиса, не авторизовано.

[12] В некоторых дополнительных вариантах осуществления, получение метки, созданной системой первого веб-сервиса в ответ на запрос авторизации от электронного устройства пользователя сервиса, осуществляется после:

- получения системой второго веб-сервиса запроса на авторизацию от электронного устройства пользователя сервиса, причем запрос на авторизацию содержит данные, идентифицирующие учетную запись пользователя сервиса, связанную с системой первого веб-сервиса; и

- передачи от системы второго веб-сервиса запроса на авторизацию системе первого веб-сервиса.

[13] Другим объектом настоящего решения является компьютерный способ анонимной авторизации пользователя сервиса, у которого есть учетная запись, связанная с системой первого веб-сервиса, способ выполняется процессором системы первого веб-сервиса, и способ включает в себя:

- получение запроса на авторизацию от электронного устройства пользователя сервиса, причем запрос на авторизацию содержит данные, идентифицирующие учетную запись пользователя сервиса, связанную с системой первого веб-сервиса;

- создание на основе данных, связанных с учетной записью пользователя сервиса, которая соответствует системе первого веб-сервиса, метки, содержащей первые данные для анонимной авторизации пользователя сервиса и вторые данные для идентификации действия, которое пытается выполнить система второго веб-сервиса для пользователя сервиса, причем система второго веб-сервиса отличается от системы первого веб-сервиса;

- хранение в постоянном машиночитаемом носителе системы первого веб-сервиса по меньшей мере одного из первых и вторых данных этой метки; и

- передачу созданной метки системе второго веб-сервиса.

[14] В некоторых вариантах осуществления способ включает получение от системы второго веб-сервиса данных, связанных с действием, которое выполняет система второго веб-сервиса для пользователя сервиса, причем действие, выполняемое системой второго веб-сервиса, соответствует действию, идентифицируемому вторыми данными метки.

[15] В вариантах осуществления, данные, связанные с действием, которое выполняется вторым веб-сервисом, создаются к определению, осуществленному системой второго веб-сервиса на основе вторых данных метки, что система второго веб-сервиса авторизована выполнять действие для пользователя сервиса.

[16] В некоторых вариантах осуществления, вторые данные метки создаются, по меньшей мере, частично, на основе списка действий, которые авторизована выполнять система второго веб-сервиса для пользователя сервиса.

[17] В некоторых вариантах осуществления получение запроса на авторизацию от электронного устройства пользователя сервиса выполняется после: создания пользователем сервиса списка действий, которые авторизован выполнять второй веб-сервис.

[18] В некоторых вариантах осуществления получение запроса на авторизацию и от электронного устройства пользователя сервиса выполняется до: определения того, соответствует ли запрос на авторизацию данным, связанным с учетной записью пользователя сервиса, которая соответствует системе первого веб-сервиса.

[19] В некоторых дополнительных вариантах осуществления способ включает в себя:

- установление связи данных, связанных с действием, которое выполняет система второго веб-сервиса, с учетной записью пользователя сервиса, который связан с системой первого веб-сервиса; и

- хранение на постоянном машиночитаемого носителе системы первого веб-сервиса данных, связанных с действием, которое выполняет система второго веб-сервиса.

[20] В некоторых вариантах осуществления способ дополнительно включает:

- определение первых данных метки, связанной с данными, которые связаны с действием, выполняемым системой второго веб-сервиса;

- считывание с постоянного машиночитаемого носителя системы первого веб-сервиса вторых данных метки, соответствующих первым данным метки, которые были определены как связанные с данными, которые связаны с действием, выполняемым системой второго веб-сервиса; и

- определение того, соответствует ли действие, выполненное системой второго веб-сервиса, действию, идентифицированному во вторых данных метки, которая была считана с постоянного машиночитаемого носителя системы первого веб-сервиса.

[21] В некоторых вариантах осуществления способ включает в себя после определения того, соответствует ли действие, выполненное системой второго веб-сервиса, действию, идентифицированному во вторых данных метки, которые были считаны с постоянного машиночитаемого носителя системы первого веб-сервиса:

- установление связи данных, связанных с действием, которое выполняет система второго веб-сервиса, с учетной записью пользователя сервиса, который связан с системой первого веб-сервиса; и

- хранение на постоянном машиночитаемого носителе системы первого веб-сервиса данных, связанных с действием, которое выполняет система второго веб-сервиса.

[22] В некоторых вариантах осуществления, способ включает получение от системы второго веб-сервиса указания на то, что действие для пользователя сервиса не авторизовано, причем указание создается системой второго веб-сервиса после определения того, что система второго веб-сервиса не авторизована выполнять действие для пользователя сервиса.

[23] В некоторых вариантах осуществления метка представляет собой первый пакет данных и второй пакет данных, причем первый пакет данных содержит первые данные метки, а второй пакет данных содержит вторые данные метки, и оба пакета данных создаются и передаются независимо друг от друга.

[24] В некоторых вариантах осуществления система первого веб-сервиса обладает доменным именем, отличным от системы второго веб-сервиса.

[25] В некоторых вариантах осуществления система первого веб-сервиса представляет собой одну из системы сервиса социальных сетей, системы сервиса электронных сообщений, системы сервиса управлением учетной записью, сервиса записи информации, системы сервиса сетевого блога и системы сервиса электронной коммерции; и в которых система второго веб-сервиса представляет собой одну из системы сервиса социальных сетей, системы сервиса электронных сообщений, системы сервиса управлением учетной записью, сервиса записи информации, системы сервиса сетевого блога и системы сервиса электронной коммерции.

[26] В некоторых вариантах осуществления данные, связанные с действием, которое было выполнено системой второго веб-сервиса относится к процедурам, проводимым между пользователем сервиса и системой второго веб-сервиса.

[27] Другим объектом настоящего решения является постоянный машиночитаемый носитель, хранящий программные инструкции (машиночитаемые коды) для анонимной авторизации пользователя сервиса, обладающего учетной записью, связанной с системой первого веб-сервиса, программные инструкции выполняются процессором компьютерной системы для осуществления одного или нескольких указанных способов.

[28] Другим объектом решения является компьютерная система, включающая в себя по меньшей мере один процессор и память, хранящую программные инструкции для анонимной авторизации пользователя сервиса, обладающего учетной записью, связанной с системой первого веб-сервиса, программные инструкции выполняются одним или несколькими процессорами компьютерной системы для осуществления одного или нескольких упомянутых выше способов.

[29] В контексте описания, если четко не указано иное, "электронное устройство", "компьютерная система" и "система веб-сервиса" подразумевает под собой аппаратное и/или системное обеспечение, подходящее к решению соответствующей задачи. Таким образом, некоторые неограничивающие примеры аппаратного и/или программного обеспечения включают в себя компьютеры (серверы, настольные компьютеры, ноутбуки, нетбуки и так далее), смартфоны, планшеты, сетевое оборудование (маршрутизаторы, коммутаторы, шлюзы и так далее) и/или их комбинацию.

[30] В контексте настоящего описания, если четко не указано иное, "машиночитаемый носитель" и "память" подразумевает под собой носитель абсолютно любого типа и характера, не ограничивающие примеры включают в себя ОЗУ, ПЗУ, диски (компакт диски, DVD-диски, дискеты, жесткие диски и т.д.), USB-ключи, флеш-карты, твердотельные накопители и накопители на магнитной ленте.

[31] В контексте настоящего описания, если четко не указано иное, "признак" информационного элемента может представлять собой сам информационный элемент или указатель, отсылку, ссылку или другой косвенный способ, позволяющий получателю указания найти сеть, память, базу данных или другой машиночитаемый носитель, из которого может быть извлечен информационный элемент. Например, признак файла может включать в себя сам файл (т.е. его содержимое), или же он может являться уникальным дескриптором файла, идентифицирующим файл по отношению к конкретной файловой системе, или каким-то другими средствами передавать получателю указание на сетевую папку, адрес памяти, таблицу в базе данных или другое место, в котором можно получить доступ к файлу. Как будет понятно специалистам в данной области техники, степень точности, необходимая для такого указания, зависит от степени первичного понимания того, как должна быть интерпретирована информация, которой обмениваются получатель и отправитель указателя. Например, если до установления связи между отправителем и получателем понятно, что признак информационного элемента принимает вид ключа базы данных для записи в конкретной таблице заранее установленной базы данных, содержащей информационный элемент, то передача ключа базы данных - это все, что необходимо для эффективной передачи информационного элемента получателю, несмотря на то, что сам по себе информационный элемент не передавался между отправителем и получателем указания.

[32] В контексте описания, если конкретно не указано иное, слова «первый», «второй», «третий» и и т.д. используются в виде прилагательных исключительно для того, чтобы отличать существительные, к которым они относятся, друг от друга, а не для целей описания какой-либо конкретной связи между этими существительными. Так, например, следует иметь в виду, что использование терминов "первый сервер" и "третий сервер " не подразумевает какого-либо порядка, отнесения к определенному типу, хронологии, иерархии или ранжирования (например) серверов/между серверами, равно как и их использование (само по себе) не предполагает, что некий "второй сервер" обязательно должен существовать в той или иной ситуации. В дальнейшем, как указано здесь в других контекстах, упоминание "первого" элемента и "второго" элемента не исключает возможности того, что это один и тот же фактический реальный элемент. Так, например, в некоторых случаях, "первый" сервер и "второй" сервер могут являться одним и тем же программным и/или аппаратным обеспечением, а в других случаях могут являться разным программным и/или аппаратным обеспечением.

[33] Каждый вариант осуществления включает по меньшей мере одну из вышеупомянутых целей и/или объектов. Следует иметь в виду, что некоторые объекты данного решения, полученные в результате попыток достичь вышеупомянутой цели, могут удовлетворять другим целям, отдельно не указанным здесь.

[34] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы технологии.

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[35] Для лучшего понимания настоящего решения, а также других его аспектов и характерных черт сделана ссылка на следующее описание, которое должно использоваться в сочетании с прилагаемыми чертежами, где:

[36] На Фиг. 1 представлена диаграмма компьютерной системы, которая подходит для реализации решения, и/или которая используется в сочетании с вариантами осуществления решения.

[37] На Фиг. 2 представлена схема сетевой вычислительной среды, подходящей для использования совместно с вариантами осуществления;

[38] На Фиг. 3 представлена схема системы веб-сервиса, подходящего для использования совместно с некоторыми вариантами осуществления; и

[39] На Фиг. 4-6 представлены диаграммы взаимодействия в рамках исполняемого на компьютере способа анонимной авторизации пользователя сервиса для выполнения на системе первого веб-сервиса и/или системе второго веб-сервиса, в соответствии с вариантом осуществления.

[40] Также следует отметить, что чертежи выполнены не в масштабе, если не специально указано иное.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

[41] Все примеры и используемые здесь условные конструкции предназначены, главным образом, для того, чтобы помочь читателю понять принципы настоящего решения, а не для установления границ его объема. Следует также отметить, что специалисты в данной области техники могут разработать различные схемы, отдельно не описанные и не показанные здесь, но которые, тем не менее, воплощают собой принципы решения и находятся в границах его объема.

[42] Кроме того, для ясности в понимании, следующее описание касается достаточно упрощенных вариантов осуществления. Как будет понятно специалисту в данной области техники, многие варианты будут обладать гораздо большей сложностью.

[43] Некоторые полезные примеры модификаций решения также могут быть охвачены нижеследующим описанием. Целью этого является также исключительно помощь в понимании, а не определение объема и границ. Эти модификации не представляют собой исчерпывающего списка, и специалисты в данной области техники могут создавать другие модификации, остающиеся в границах объема решения. Кроме того, те случаи, где не были представлены примеры модификаций, не должны интерпретироваться как то, что никакие модификации невозможны, и/или что то, что было описано, является единственным вариантом осуществления.

[44] Более того, все заявленные здесь принципы, аспекты и варианты осуществления, равно как и конкретные их примеры, предназначены для обозначения их структурных и функциональных основ, вне зависимости от того, известны ли они на данный момент или будут разработаны в будущем. Таким образом, например, специалистами в данной области техники будет очевидно, что представленные здесь блок-схемы представляют собой концептуальные иллюстративные схемы, отражающие принципы решения. Аналогично, любые блок-схемы, диаграммы переходного состояния, псевдокоды и т.п.представляют собой различные процессы, которые могут быть представлены на машиночитаемом носителе и, таким образом, использоваться компьютером или процессором, вне зависимости от того, показан явно подобный компьютер или процессор или нет.

[45] Функции различных элементов, показанных на фигурах, включая функциональный блок, обозначенный как "процессор", могут быть обеспечены с помощью специализированного аппаратного обеспечения или же аппаратного обеспечения, способного использовать подходящее программное обеспечение. Когда речь идет о процессоре, функции могут обеспечиваться одним специализированным процессором, одним общим процессором или множеством индивидуальных процессоров, причем некоторые из них могут являться общими. Более того, использование термина "процессор" или "контроллер" не должно подразумевать исключительно аппаратное обеспечение, способное поддерживать работу программного обеспечения, и может включать в себя, без установления ограничений, цифровой сигнальный процессор (DSP), сетевой процессор, интегральная схема специального назначения (ASIC), программируемую пользователем вентильную матрицу (FPGA), постоянное запоминающее устройство (ПЗУ) для хранения программного обеспечения, оперативное запоминающее устройство (ОЗУ) и энергонезависимое запоминающее устройство. Также может быть включено другое аппаратное обеспечение, обычное и/или специальное.

[46] Программные модули или простые модули, представляющие собой программное обеспечение, которое может быть использовано здесь в комбинации с элементами блок-схемы или другими элементами, которые указывают на выполнение этапов процесса и/или текстовое описание. Подобные модели могут быть выполнены на аппаратном обеспечении, показанном напрямую или косвенно.

[47] С учетом этих примечаний, далее будут рассмотрены некоторые не ограничивающие варианты осуществления настоящего решения.

[48] На Фиг. 1 представлена диаграмма компьютерной системы 100, которая подходит для некоторых вариантов осуществления, компьютерная система 100 включает в себя различные аппаратные компоненты, включая один или несколько одно- или многоядерных процессоров, которые представлены процессором 110, твердотельный накопитель 120, ОЗУ 130, интерфейс 140 монитора, и интерфейс 150 ввода/вывода.

[49] Связь между различными компонентами компьютерной системы 100 может осуществляться с помощью одной или несколько внутренних и/или внешних шин 160 (например, шины PCI, универсальной последовательной шины, высокоскоростной шины IEEE 1394, шины SCSI, шины Serial ATA и так далее), с которыми электронно соединены различные аппаратные компоненты. Интерфейс 140 монитора может быть соединен с монитором 142 (например, через HDMI-кабель 144), видимом пользователю 170 сервиса (также упоминаемому как пользователь сервиса), интерфейс 150 ввода/вывода может быть соединен с клавиатурой 151 (например, через USB-кабель 153) и мышью 152 (например, через USB-кабель 154), как клавиатура 151, так и мышь 152 используются пользователем 170 сервиса.

[50] В соответствии с вариантами осуществления твердотельный накопитель 120 хранит программные инструкции, подходящие для загрузки в ОЗУ 130, и использующиеся процессором 110 для анонимной идентификации того, что пользователь сервиса обладает учетной записью, связанной с системой первого веб-сервиса. Например, программные инструкции (машиночитаемые коды) могут представлять собой часть библиотеки или приложение.

[51] На Фиг. 2 представлена сетевая вычислительная среда 200, подходящая для использования в рамках некоторых вариантов осуществления настоящей технологи, сетевая вычислительная среда 200 включает в себя систему 202 первого веб-сервиса, систему 204 второго веб-сервиса, пользовательское устройство 208 и сеть 206, которая позволяет этим системам связываться.

[52] Система 202 первого веб-сервиса и система 204 второго веб-сервиса могут являться системами, предоставляющими веб-сервис одному или нескольким пользователям 170 сервиса, взаимодействующим с системой 202 первого веб-сервиса и/или системой 204 второго веб-сервиса через устройство пользователя 208. Система 202 первого веб-сервиса и/или система 204 второго веб-сервиса может включать в себя, среди прочего, систему сервиса социальных сетей (например, Facebook, VK), систему сервиса электронных сообщений (например, Gmail, Yandex. Mail), систему сервиса управлением учетной записью (например, Yandex. Passport), сервис записи информации (например, Evernote), систему сервиса сетевого блога (например, Twitter) и системы сервиса электронной коммерции (например, Amazong, Expedia).

[53] Следует иметь в виду, что в некоторых примерных вариантах осуществления технологии, система 202 первого веб-сервиса и система 204 второго веб-сервиса могут обе являться частями общей системы веб-сервиса, отвечающими по меньшей мере за два разных веб-сервиса. В настоящем примере, системы 202, 204 первого и второго веб-сервиса могут принадлежать и/или управляться одним и тем же лицом и/или отвечать за два различных веб-сервиса, размещенных под общим доменным именем (например, система сервиса электронных сообщений Yandex.Mail является первым веб-сервисом, а сервис управления учетной записью Yandex. Passport является вторым веб-сервисом, и оба сервиса размещены под общим доменным именем "Yandex").

[54] С другой стороны, в некоторых вариантах осуществления, каждая из системы 202 первого веб-сервиса и системы 204 второго веб-сервиса может представлять отдельный веб-сервис систем, отвечающим по меньшей мере за два различных веб-сервиса. В настоящем примере, системы 202, 204 первого и второго веб-сервиса могут принадлежать и/или управляться различными лицами и/или отвечать за два различных веб-сервиса, размещенных под различными доменными именами (например, система сервиса электронных сообщений Yandex.Mail является первым веб-сервисом, а система сервиса электронной коммерции Amazon является вторым веб-сервисом, и сервисы размещены под разными доменными именами "Yandex" и "Amazon").

[55] Также следует иметь в виду, что в некоторых других вариантах осуществления, системы 202, 204 первого и второго веб-сервисов могут размещать один или несколько веб-сервисов. Например, система 202 первого веб-сервиса может размещать систему электронных сообщений (Yandex.Mail) и сервис управления учетной записью (например, Yandex.Passport), а система 204 второго веб-сервиса может размещать сервис записи информации (например, Evernote) и/или систему сервиса электронной коммерции (например, Expedia). Также следует иметь в виду, что в некоторых вариантах осуществления система 202 первого веб-сервиса может упоминаться как система базового веб-сервиса, а система 204 второго веб-сервиса может упоминаться как система стороннего веб-сервиса, в то время как в других примерных вариантах осуществления технологии система 202 первого веб-сервиса может упоминаться как система стороннего веб-сервиса, а система 204 второго веб-сервиса может упоминаться как система базового веб-сервиса.

[56] Системы 202, 204 первого и второго веб-сервисов могут включать в себя один или несколько серверов. Каждый сервер может включать в себя внутренние аппаратные компоненты, такие как один или несколько многоядерных процессоров, которые представлены на чертеже в виде процессора 110, ОЗУ 130, каждый компонент является аналогом к соответственно пронумерованным компонентам компьютерной системы 100, показанным на Фиг. 1, также как и сетевого интерфейса (не показан) для связи через сеть 206.

[57] Пользовательское устройство 208 может взаимодействовать с первым веб-сервисом 202 и/или вторым веб-сервисом 208 путем получения ввода от пользователя 170 сервиса и получения и передачи данных через сеть 206. Пользовательское устройство 208 может, в качестве неограничивающего примера, представлять собой настольный компьютер, ноутбук, смартфон (например, Apple iPhone or a Samsung Galaxy S5), персональный цифровой помощник (PDA) или другое устройство, включающее в себя функциональность вычисления и возможности коммуникации. Пользовательское устройство 208 может включать в себя внутренние аппаратные компоненты, такие как один или несколько многоядерных процессоров, которые представлены на чертеже в виде процессора 110, ОЗУ 130, каждый компонент является аналогом к соответственно пронумерованным компонентам компьютерной системы 100, показанным на Фиг. 1, также как и сетевого интерфейса (не показан) для связи с первым и вторым веб-сервисами 202, 204 через сеть 206.

[58] В одном варианте осуществления пользовательское устройство 208 отображает содержание одной из систем 202, 204 первого или второго веб-сервиса путем обработки документа 214 на языке разметки, полученного от системы 202, 204 первого и/или второго веб-сервиса. Документ 214 на языке разметки определяет содержимое и одну или несколько инструкций, описывающих форматирование или представление содержимого. Путем выполнения инструкций, включенных в документ 214 на языке разметки браузерное приложение 210 отображает и определяет содержимое с помощью формата или представления, описанного в документе 214 на языке разметки. В различных вариантах осуществления технологии, документ 214 на языке разметки включает в себя файл данных, включая данные на расширяемом языке разметки (XML), данные на расширяемом языке гипертекстовой разметки (XHTML) или данные на любом другом языке разметки.

[59] В других вариантах осуществления, пользовательское устройство 208 может также включать в себя куки 212, содержащие данные, которые указывают на то, зашел ли пользователь 170 сервиса, относящийся к пользовательскому устройству 208, в систему 202 первого веб-сервера. Куки 212 могут указывать на то, участвует ли пользователь 170 сервиса в активном сеансе, в котором пользовательское устройство 208 обменивается данными с системой 202 первого веб-сервиса, тем самым указывая на то, что пользователь 170 сервиса обладает учетной записью, связанной с системой 202 первого веб-сервиса.

[60] На Фиг. 3 представлена схема системы веб-сервиса, подходящего для использования совместно с некоторыми вариантами осуществления. Диаграмма на Фиг. 3 иллюстрирует варианты осуществления системы 202 первого веб-сервиса и/или системы 204 второго веб-сервиса. Для целей упрощения описания примерных вариантов осуществления технология здесь сделана ссылка на системы 202, 204 первого и второго веб-сервисов, но это не означает, что системы 202, 204 первого и второго веб-сервисов должны быть аналогичны, чтобы подходить для использования в других вариантах осуществления настоящей технологии. Система 202 первого веб-сервиса и система 204 второго веб-сервиса могут быть различными и/или отличаться (полностью или частично) от системы веб-сервиса, представленной на Фиг. 3, это не выходит за границы решения.

[61] Системы 202, 204 первого и второго веб-сервисов могут включать в себя веб-сервер 302, сервер 304 запроса на интерфейс программирования приложений (API), сервер 306 авторизации, хранилище 308 профилей пользователя, регистратор 310 действий, хранилище 312 шаблонов, журнал 312 действий, хранилище 316 связей, генератор 318 меток, хранилище 320 меток и/или хранилище 322 папки "входящие". В других вариантах осуществления технологии, системы 202, 203 первого и второго веб-сервисов могут включать меньшее количество модулей или другие модули для различных приложений. Обычные компоненты, например, сетевые интерфейсы, механизмы безопасности, распределители нагрузки, отказоустойчивые консоли и т.д. не показаны для того, чтобы сфокусироваться на подробностях строения системы.

[62] Веб-сервер 302 первой системы 202 первого веб-сервиса может связывать систему 202 первого веб-сервиса с одним или несколькими пользовательскими устройствами и/или одним или несколькими внешними веб-сайтами, такими как пользовательское устройство 208 и/или систему 204 второго веб-сервиса, через сеть 206. Веб-сервер 302 обслуживает веб-страницы, а также другой веб-контент, например, Java, Flash, XML и так далее. Веб-сервер 302 может включать в себя почтовый сервер или другую функциональность обмена сообщениями для получения и передачи сообщений между системой 202 первого веб-сервиса и одного или нескольких пользовательских устройств 208. Сообщения могут включать в себя мгновенные сообщения, сообщения, находящиеся в очереди (например, электронные сообщения), текстовые и SMS-сообщения или любые другие форматы сообщений.

[63] Сервер 304 запроса API системы 202 первого веб-сервиса позволяет одной или несколькими системам внешних веб-сервисов, таким как система 204 второго веб-сервиса обменивать информацию через первый веб-сервис 202 путем вызова одного или нескольких API. Такой обмен информацией может быть представлять собой отправку информации от системы 202 первого веб-сервиса системе 204 второго веб-сервиса и/или передачу информации от системы 204 второго веб-сервиса системе 202 первого веб-сервиса. Такой обмен информацией может быть, среди прочего, запросом на авторизацию, меткой, которая используется для анонимной идентификации пользователя 170 сервиса и/или данных, связанных с действием, которое было выполнено в системе 204 второго веб-сервиса, что будет подробнее описано ниже. Сервер 304 запроса API системы 202 первого веб-сервиса может также позволять системе 204 второго веб-сервиса передавать информацию с помощью вызова API. Например, система 204 второго веб-сервиса передает запрос API системе 202 первого веб-сервиса через сеть 206, и сервер 304 запроса API получает запрос API. Сервер 304 запроса API обрабатывает запрос путем вызова API, связанного с запросом API, для создания подходящего ответа, и сервер 304 запроса API связывается с системой 204 веб-сервиса через сеть 206.

[64] Сервер 306 авторизации системы 202 первого веб-сервиса может включать в себя логику определения того, доступна ли друзьям пользователя, внешним веб-сайтам, таким как система 204 второго веб-сервиса и/или другим приложениям и лицам конкретная информация, связанная с пользователем. Сервер 306 авторизации может применять одну или несколько настроек приватности пользователей системы 202 первого веб-сервиса. Настройки приватности пользователя определяют то, как именно будет происходить обмен информацией, связанной с пользователей. Настройка приватности включает в себя указание на конкретную информацию, связанную с пользователем, и указание на лицо или лица, с которыми происходит обмен информацией. Примерами таких лиц, с которыми может происходить обмен информацией, могут включать в себя других пользователей, приложения, систему 204 второго веб-сервиса или любое лицо, которое потенциально может получать доступ к информации. Информация, обмен которой может происходить, может включать в себя информацию о профиле пользователя, например фотографию профиля, телефонные номера, связанные с пользователем, соединения пользователя, действия, которые были предприняты пользователем, такие как, добавление соединения, изменение информации о профиле пользователя и так далее.

[65] В некоторых вариантах сер