跳转至

实现登录持久化(单点登录)

保持我登录状态 (SSO) 是一项功能,允许用户在登录其他需要网页登录的网站时(如同一项目中的社区或网上商店)保持其登录状态,而无需额外的网页登录。

Note

维护登录(SSO)的条件

要实现维护登录(SSO)功能,必须满足以下所有条件。

  • 登录验证成功
  • 同一项目内的用户已登录
  • 生成了 PlayerID 的用户

实现保持登录状态 (SSO)

保持我登录 (SSO) 功能可以按照以下顺序实现。

  1. 如果登录验证和用户信息检索 API 验证成功,则从响应中获取的 JWT (user_info.access_token) 值将传递给同一项目中需要网页登录的另一个网站。
  2. 接收站点使用公钥验证 JWT 的签名并检查过期时间。签名验证和时间检查的逻辑必须由接收站点的开发人员直接实现。
  3. 如果登录验证成功,则检查访问令牌 (JWT) 负载中的 user_id (PlayerID) 以继续进行 SSO 登录处理。
    为了使 SSO 登录处理成功,必须满足以下所有条件。
    • JWT 签名验证成功
    • JWT 未过期
    • JWT 负载中包含的 user_id (PlayerID) 与开发者存储的 PlayerID 匹配