Choisir votre chemin de migration
Sélectionnez le parcours qui correspond le mieux à vos besoins :
| Chemin | Application idéale | En savoir plus |
|---|---|---|
| Universal Commerce Protocol (UCP) | Marchands et marchands. | Documentation UCP |
| Association de compte standard | Maison connectée, TV et YouTube. | Docs |
L'association de compte permet aux titulaires de comptes Google de se connecter rapidement, facilement et en toute sécurité à vos services. Vous pouvez choisir d'implémenter l'association de compte Google pour partager les données d'un utilisateur depuis votre plate-forme avec les applications et services Google.
Le protocole OAuth 2.0 sécurisé vous permet d'associer de manière sécurisée le compte Google d'un utilisateur à son compte sur votre plate-forme, ce qui permet aux applications et appareils Google d'accéder à vos services.
Les utilisateurs peuvent associer ou dissocier leurs comptes, et éventuellement en créer un autre sur votre plate-forme via l'association de comptes Google.
Cas d'utilisation
Voici quelques raisons d'implémenter l'association de compte Google :
Partagez les données d'un utilisateur depuis votre plate-forme avec les applications et services Google.
Intégrez Google Shopping et les surfaces d'IA (Recherche, Gemini) à l'aide de l'Universal Commerce Protocol (UCP).
Regardez vos contenus vidéo et vos films avec Google TV.
Gérez et contrôlez les appareils connectés Google Smart Home à l'aide de l'application Google Home et de l'Assistant Google. Dites par exemple "Hey Google, allume les lumières".
Créez des expériences et des fonctionnalités personnalisées de l'Assistant Google avec les actions conversationnelles, par exemple "Hey Google, commande mon café habituel chez Starbucks".
Permettre aux utilisateurs de gagner des récompenses en regardant des diffusions en direct éligibles sur YouTube après avoir associé leur compte Google à un compte partenaire de récompenses.
Préremplissez les nouveaux comptes lors de l'inscription avec des données partagées de manière consentie à partir d'un profil de compte Google.
Fonctionnalités et exigences
Le tableau suivant définit la compatibilité et les recommandations pour chaque flux d'association.
| Associer Flow | Fonctionnalités standards | Fonctionnalités UCP |
|---|---|---|
| App Flip | Recommandé | Recommandé |
| Association simplifiée | Recommandé | Recommandé |
| Association OAuth | Obligatoire (création de remplacement) | Obligatoire (création de remplacement) |
| OAuth 2.1 | Recommandé | Recommandé |
Développement agentique (MCP et UCP)
Les grands modèles de langage (LLM) et les agents d'IA nécessitent une authentification robuste pour accéder aux données utilisateur. L'association de compte Google est compatible avec les nouveaux paradigmes suivants :
- Protocole MCP (Model Context Protocol) : GAL sert de poignée de main de sécurité. Les agents utilisent des jetons OAuth 2.1 pour interroger de manière sécurisée les outils de votre serveur MCP.
Universal Commerce Protocol (UCP) : permet aux agents commerciaux d'accéder aux profils utilisateur et aux vecteurs de paiement de manière sécurisée.
Améliorez la confidentialité des utilisateurs en définissant des niveaux d'accès personnalisés pour ne partager que les données nécessaires. Renforcez la confiance des utilisateurs en définissant clairement comment leurs données sont utilisées.
L'accès aux données et aux services hébergés sur votre plate-forme peut être révoqué en dissociant les comptes. L'implémentation d'un point de terminaison de révocation de jeton facultatif vous permet de rester synchronisé avec les événements initiés par Google, tandis que la protection multi-comptes (RISC) vous permet d'informer Google de tout événement de dissociation qui se produit sur votre plate-forme.
Parcours d'association de compte
Il existe trois parcours d'association de compte Google, qui sont tous basés sur OAuth et qui vous obligent à gérer ou contrôler les points de terminaison d'autorisation et d'échange de jetons conformes à OAuth 2.0.
Lors du processus d'association, vous émettez des jetons d'accès à Google pour des comptes Google individuels après avoir obtenu le consentement des titulaires de compte pour associer leurs comptes et partager des données.
Association OAuth
Il s'agit du flux d'association OAuth qui redirige les utilisateurs vers votre site Web pour l'association. L'utilisateur est redirigé vers votre site Web pour se connecter à son compte. Une fois connecté, l'utilisateur accepte de partager ses données sur votre service avec Google. Le compte Google de l'utilisateur est alors associé à votre service.
L'association OAuth est compatible avec les flux OAuth avec code d'autorisation et implicites. Votre service doit héberger un point de terminaison d'autorisation conforme à OAuth 2.0 pour le flux implicite, et doit exposer un point de terminaison d'autorisation et d'échange de jetons lors de l'utilisation du flux avec code d'autorisation.
Figure 1 : Association de compte sur le téléphone d'un utilisateur avec l'association OAuth
Association de compte basée sur OAuth (App Flip)
Flux OAuth qui redirige les utilisateurs vers votre application pour l'association.
L'association d'applications basée sur OAuth guide les utilisateurs lorsqu'ils passent de vos applications mobiles Android ou iOS validées à la plate-forme Google pour examiner les modifications proposées concernant l'accès aux données et donner leur consentement pour associer leur compte sur votre plate-forme à leur compte Google. Pour activer App Flip, votre service doit être compatible avec l'association OAuth ou l'association Se connecter avec Google basée sur OAuth à l'aide du flux de code d'autorisation.
L'App Flip est compatible avec Android et iOS.
Fonctionnement :
L'appli Google vérifie si votre application est installée sur l'appareil de l'utilisateur :
- Si l'application est trouvée, l'utilisateur est redirigé vers votre application. Votre application recueille le consentement de l'utilisateur pour associer le compte à Google, puis le redirige vers l'interface Google.
- Si l'application n'est pas trouvée ou qu'une erreur se produit lors du processus d'association par bascule d'application, l'utilisateur est redirigé vers le flux d'association simplifiée ou OAuth.
Figure 2 : Association de compte sur le téléphone d'un utilisateur avec App Flip
Association simplifiée basée sur OAuth ("simplifiée")
La simplification de l'association basée sur OAuth avec Se connecter avec Google ajoute Se connecter avec Google à l'association OAuth, ce qui permet aux utilisateurs de terminer le processus d'association sans quitter l'interface Google, réduisant ainsi les frictions et les abandons.
L'association simplifiée basée sur OAuth offre la meilleure expérience utilisateur avec une connexion, une création de compte et une association de compte fluides en combinant Se connecter avec Google et l'association OAuth. Votre service doit être compatible avec les points de terminaison d'autorisation et d'échange de jetons conformes à OAuth 2.0.
De plus, votre point de terminaison d'échange de jetons doit être compatible avec les assertions JSON Web Token (JWT) et implémenter les intents check, create et get.
Fonctionnement :
Google affirme que le compte utilisateur et transmet ces informations à vous :
- Si un compte existe pour l'utilisateur dans votre base de données, il associe correctement son compte Google à son compte sur votre service.
- Si aucun compte n'existe pour l'utilisateur dans votre base de données, il peut créer un compte tiers avec les informations fournies par Google (adresse e-mail, nom et photo de profil) ou choisir de se connecter et d'associer un autre e-mail (il devra alors se connecter à votre service à l'aide de l'association OAuth).
Figure 3. Association de compte sur le téléphone d'un utilisateur avec l'association simplifiée
Quel flux devez-vous utiliser ?
Nous vous recommandons d'implémenter tous les flux pour que les utilisateurs bénéficient de la meilleure expérience d'association possible. Les flux simplifiés et de transfert d'application réduisent les frictions liées à l'association, car les utilisateurs peuvent effectuer le processus d'association en très peu d'étapes. Le flux d'association OAuth est le plus simple à mettre en œuvre. Nous vous conseillons de commencer par celui-ci, puis d'ajouter les autres flux d'association.
Utiliser des jetons
L'association de compte Google est basée sur la norme industrielle OAuth 2.0.
Vous émettez des jetons d'accès à Google pour des comptes Google individuels après avoir obtenu le consentement des titulaires de compte pour associer leurs comptes et partager des données.
令牌类型
OAuth 2.0 使用称为令牌的字符串在用户代理、客户端应用和 OAuth 2.0 服务器之间进行通信。
在帐号关联期间,可以使用三种类型的 OAuth 2.0 令牌:
授权代码 。一种短期令牌,可以交换为访问令牌和刷新令牌。出于安全考虑,Google 会调用您的授权端点来获取一次性或短期代码。
访问令牌 。一种令牌,用于授予持有者对资源的访问权限。为了限制因丢失此令牌而可能造成的风险,此令牌的生命周期有限,通常会在大约一小时后过期。
刷新令牌 。一种长期令牌,当访问令牌过期时,可以交换为新的访问令牌。当您的服务与 Google 集成时,此令牌仅由 Google 存储和使用。Google 会调用您的令牌交换端点,以将刷新令牌交换为访问令牌,而访问令牌又用于访问用户数据。
令牌处理
在集群环境和客户端-服务器交换中,竞争条件可能会导致在使用令牌时出现复杂的时序和错误处理场景。 例如:
- 您收到有关新访问令牌的请求,并签发了新的访问令牌。同时,您收到有关使用之前未过期的访问令牌访问您服务资源的请求。
- Google 尚未收到(或永远不会收到)您的刷新令牌回复。与此同时,之前有效的刷新令牌在 Google 的请求中使用。
由于集群中运行的异步服务、网络行为或其他方式,请求和回复可能会以任何顺序到达,或者根本不会到达。
无法保证您的令牌处理系统和 Google 的令牌处理系统之间以及内部的即时且完全一致的共享状态。在短时间内,多个有效且未过期的令牌可能会在系统内或跨系统共存。为了最大限度地减少对用户的负面影响,我们建议您执行以下操作:
- 接受未过期的访问令牌,即使在签发新令牌后也是如此。
- 使用 刷新令牌轮替的替代方案。
- 支持多个同时有效的访问令牌和刷新令牌。出于安全考虑,您应限制令牌数量和令牌生命周期。
维护和服务中断处理
在维护期间或计划外中断期间,Google 可能无法调用您的授权端点或令牌交换端点来获取访问令牌和刷新令牌。
您的端点应返回 503 错误代码和空正文。在这种情况下,Google 会在有限的时间内重试失败的令牌交换请求。前提是 Google 稍后能够获取刷新令牌和访问令牌,否则用户将无法看到失败的请求。
如果用户发起的访问令牌请求失败,则会导致显示错误。如果使用隐式 OAuth 2.0 流程,则用户需要重试关联失败。
建议
有很多解决方案可以最大限度地减少维护影响。您可以考虑以下选项:
维护现有服务,并将有限数量的请求路由到新更新的服务。仅在确认预期功能后才迁移所有请求。
减少维护期间的令牌请求数量:
将维护期限制为小于访问令牌生命周期。
暂时延长访问令牌生命周期:
- 将令牌生命周期延长到大于维护期。
- 等待访问令牌生命周期的两倍时长,以便用户将短期令牌交换为长期令牌。
- 进入维护期。
- 使用
503错误代码和空正文响应令牌请求。 - 退出维护期。
- 将令牌生命周期缩短回正常水平。
Association persistante
L'association persistante est une exigence fondamentale pour des intégrations stables. Il garantit que les comptes utilisateur restent associés même en cas de défaillance réseau temporaire ou d'actualisation périodique des identifiants.
Pour implémenter l'association persistante, utilisez une approche de "fenêtre glissante" : prolongez l'expiration du jeton d'actualisation existant au lieu de le faire pivoter (voir la section 6 du RFC 6749). Cela évite les conditions de concurrence et la dissociation involontaire qui peuvent se produire si un nouveau jeton d'actualisation est émis, mais n'est pas reçu ni stocké correctement par Google.
S'inscrire avec Google
Nous aurons besoin d'informations sur votre configuration OAuth 2.0 et de partager des identifiants pour activer l'association de compte. Pour en savoir plus, consultez la section Inscription.