Как работает Google Global Login? - PullRequest
       6

Как работает Google Global Login?

25 голосов
/ 05 августа 2009

Всякий раз, когда я захожу в один сервис Google, я автоматически захожу на все остальные их сайты в разных доменах.

Что я хочу знать, так это как они могут получить доступ к разрозненным файлам cookie и сеансам, которые принадлежат другому домену.

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

1 Ответ

80 голосов
/ 05 августа 2009

Логин Google работает так:

1) Вы входите, как правило, на странице входа, которая находится в домене Google.com/accounts.

1a) Если вы не находитесь в домене Google.com/accounts, он отправит вас туда после того, как вы отправите форму. Это можно найти на сайтах, таких как Blogger.

Как только вы попадаете в домен Google.com/accounts, они делают две вещи

2) Они устанавливают файлы cookie, специфичные для домена Google.com/accounts, которые также можно отправлять только через безопасное соединение. Это для проверки вашей личности позже.

Я говорю несколько, потому что к домену google.com/accounts привязано несколько файлов cookie. Я считаю, что одно из них - убедиться, что все не сработает, если не разрешены безопасные соединения

3) Они устанавливают cookie, который охватывает все домены, используя .google.com в качестве своего домена, потому что это сделает cookie доступным для любого домена.

4) Они направляют вас обратно.

5) Если это сайт в другом домене, например блоггер, они отправляют ключ авторизации в URL. Страница его видит, проверяет и устанавливает cookie для другого домена. Подобную технику можно увидеть, используя Google Oauth.

Вот где приходит этот Безопасный Cookie.

Если вы заметите, что когда вы заходите на сайт после закрытия браузера, они перенаправляют вас на путь google.com/accounts, где они проверяют вас в безопасном соединении, а затем сбрасывают cookie для всего поддоменов. Затем они отправят вас обратно.

Кроме того, некоторые сайты, такие как Google Adsense, используют ту же технику, что и Google.com/accounts, создавая безопасный cookie-файл по определенному пути, а затем используя более глобальные cookie-файлы, чтобы расширить доступ.

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

Примечание. Я буквально целый месяц провел, просто просматривая сайт Google и просматривая сайт Google, чтобы узнать, как они работали. Голосуя над этим постом, вы уменьшаете грусть, которую я испытываю к тому, что у меня нет жизни

...