认证

社交账号登录


社交登录(OAuth)是一种开放的身份验证标准,允许用户使用其他网站或应用的凭证登录当前网站或应用。OAuth 让用户能够授权第三方应用访问其在线账户,而无需共享密码。

社交登录常见于通过第三方应用登录社交媒体账户的场景。这是一种安全便捷的用户认证方式,也能实现应用间的信息共享。

优势

为应用添加社交登录功能具有多重优势:

  • 提升用户体验:用户可以使用现有社交媒体账户快速注册和登录您的应用,相比从头创建新账户更加便捷。这降低了用户访问门槛,优化了整体使用体验。

  • 增强用户参与度:通过获取用户兴趣、人口统计特征和社交关系等附加数据,您可以定制内容和营销策略,提供更个性化的服务,从而提升用户参与度。

  • 强化安全性:借助社交媒体平台的安全措施和认证协议,社交登录能提升应用的安全性,有效防范未授权访问和账户劫持风险。

使用 Supabase Auth 设置社交登录提供商

Supabase 支持多种社交登录提供商。按照以下指南为您的平台配置社交登录提供商。

提供商令牌

您可以使用返回的提供商令牌(provider token)和提供商刷新令牌(provider refresh token)向OAuth提供商发起API调用。例如,您可以使用Google提供商令牌代表用户访问Google API。

Supabase Auth 不会为用户管理提供商令牌的刷新。您的应用程序需要使用提供商刷新令牌来获取新的提供商令牌。如果没有返回提供商刷新令牌,可能意味着以下情况之一:

  • OAuth提供商不返回刷新令牌
  • 需要指定额外的scope才能让OAuth提供商返回刷新令牌

提供商令牌特意不会存储在您的项目数据库中。这是因为提供商令牌可以访问第三方系统中的敏感用户数据。不同应用程序有不同的需求,一个应用程序的OAuth scope可能比另一个应用程序的权限大得多。如果您想在完成OAuth流程的浏览器之外使用提供商令牌,建议将其发送到您控制的可信安全服务器。