开发指南

API 文档

概述

最近更新时间:2021-04-15 16:45:36

CloudBase 提供跨平台的登录鉴权功能,您可以基于此为自己的应用构建用户体系,包括但不限于:

  • 为用户分配全局唯一的身份标识 uid。
  • 储存和管理用户个人信息。
  • 关联多种登录方式。
  • 管理用户对数据、资源的访问权限。
  • 用户行为的收集和分析。

同时,CloudBase 登录鉴权还是保护您的服务资源的重要手段,CloudBase 对用户端发来的每一个请求,都会进行身份和权限的检查,避免您的资源被恶意攻击者消耗或者盗用。

登录鉴权方式

云开发 CloudBase 提供以下登录鉴权方式供不同的用户场景使用:

登录类型 场景
匿名登录 用户以临时的匿名身份登录云开发,无需注册。
邮箱登录 用户使用自己的邮箱+密码登录。
微信授权登录
  • 微信公众平台授权的公众号网页
  • 微信开放平台用授权的网站
  • 自定义登录 开发者可以完全接管登录流程,例如与自有的账号体系打通、自定义登录逻辑等。
    用户名密码登录 用户使用自己的用户名+密码登录。
    微信小程序登录 已开通云开发的微信小程序初始化后便同步完成登录鉴权,无需额外操作。
    短信验证码登录 用户使用自己的手机号+验证码登录。

    CloudBase 用户

    每个登录 CloudBase 的用户,都有一个对应的 CloudBase 账号,用户通过此账号访问调用 CloudBase 的数据与资源。

    信息项 说明
    UID 每个账号都有全局唯一的 UID,即账号 ID,作为用户的唯一身份标识。
    用户信息 每个账号可以添加、修改用户信息,请参见 管理用户
    登录方式 每个账号除了最初的登录方式之外,还可以关联其它登录方式,请参见 账户关联

    登录状态的持久化

    您可以指定登录状态如何持久保留。默认为 local,相关选项包括:

    说明
    session 在 SessionStorage 中保留登录状态,当前页面关闭后会被清除。
    local 在本地存储中长期地保留登录状态。
    none 在内存中保留登录状态,当前页面刷新、重定向之后会被清除。

    例如,对于网页应用,最佳选择是 local,即在用户关闭浏览器之后仍保留该用户的会话。这样,用户不需要每次访问该网页时重复登录,避免给用户带来诸多不便体验。

    说明:

    匿名登录 的持久化类型强制设为 local,外部设置的值会被忽略。

    访问令牌与刷新令牌

    • 访问令牌:用户登录 CloudBase 之后,会获得访问令牌(Access Token) 作为访问 CloudBase 的凭证,访问令牌默认具有两小时有效期
    • 刷新令牌:登录时会获得刷新令牌(Refresh Token)默认有效期 30 天,用于访问令牌过期后,获取新的访问令牌。
    说明
    • CloudBase 用户端 SDK 会自动维护令牌的刷新和有效期,开发者无需特别关注此流程。
    • 匿名登录 的刷新令牌(Refresh Token)会在到期后自动续期,以实现长期的匿名登录状态。
    目录