Связывание аккаунта

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

Если ваше действие является дополнением к существующим приложениям на разных платформах (например, в Интернете или Android), вы можете использовать привязку учетных записей, чтобы безопасно сделать настройки пользователей доступными для всех платформ, что обеспечивает единообразие кросс-платформенного взаимодействия.

Для привязки аккаунта к Actions on Google используется Google Sign-In , безопасная система аутентификации Google, и дополнительно OAuth 2.0 , стандартный отраслевой протокол для авторизации.

Понимание процесса привязки аккаунта

Когда Ассистент сопоставляет учетную запись Google с пользователем, вы можете использовать привязку учетной записи, чтобы запросить у пользователя разрешение на доступ к этой учетной записи Google. Вы можете использовать данные учетной записи, чтобы сделать следующее:

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

Действия в Google предлагают три разных типа привязки учетных записей.

Вход через Google

Рисунок 1. Тип привязки учетной записи только для входа в Google является рекомендуемым решением для действий, предназначенных только для помощника.

С помощью Google Sign-In для Assistant ваше действие может запросить доступ к профилю Google вашего пользователя во время разговора, включая имя пользователя, адрес электронной почты и изображение профиля. Пользователь может завершить весь процесс с помощью голоса, что обеспечивает беспрепятственный вход в систему.

Этот тип привязки учетной записи рекомендуется, если применимо одно из следующих условий:

  • У вас нет существующей системы аутентификации.
  • У вас есть существующая система аутентификации, и вы хотите связываться только с пользователями, которые зарегистрировались в ваших существующих приложениях, используя свой адрес @gmail.com.

Дополнительные сведения см. в руководстве по концепции входа в систему Google и руководстве по реализации .

«Упрощенная» привязка входа в Google на основе OAuth

Рис. 2. Оптимизированное связывание — рекомендуемое решение для многоплатформенных действий.

Тип привязки входа в Google на основе OAuth «Оптимизированный» добавляет вход в Google поверх привязки учетной записи на основе OAuth. Это обеспечивает беспрепятственное голосовое связывание для пользователей Google, а также позволяет связывать учетные записи для пользователей, которые зарегистрировались в вашей службе с помощью удостоверения, отличного от Google.

Чтобы использовать этот поток, вам необходимо расширить один из поддерживаемых стандартных потоков OAuth 2.0, чтобы добавить поддержку проприетарных расширений протокола Google, которые позволяют:

  • Легко свяжите учетные записи, используя данные профиля Google.
  • Легко создавайте новые учетные записи, используя данные профиля Google (необязательно).

Этот тип привязки учетной записи рекомендуется, если у вас есть существующая система аутентификации и вы хотите разрешить пользователям подключаться к адресам, отличным от @gmail.com.

Чтобы узнать больше, ознакомьтесь с руководством по концепции связывания Google Sign-in на основе OAuth и руководством по внедрению .

Связывание OAuth

Тип привязки OAuth поддерживает два стандартных потока OAuth 2.0: неявный поток и поток кода авторизации .

Использование этого потока не рекомендуется, поскольку он требует переноса взаимодействия с пользователем с голоса на экран. Вы можете рассмотреть возможность использования этого потока, если у вас есть существующая реализация сервера OAuth 2.0, и вы не можете расширить конечную точку обмена токенами, чтобы добавить поддержку протоколов Google для автоматического связывания и создания учетной записи из токена идентификатора.

Чтобы узнать больше, см. руководство по концепции связывания OAuth и руководство по внедрению .

Дополнительные сведения о реализации привязки учетных записей в вашем действии см. в следующем ресурсе: