获取 AccessToken
什么是 AccessToken
AccessToken 是一种安全令牌,用于在无状态协议中代表用户的认证信息。在云开发平台中,AccessToken 允许应用访问受保护的资源,例如用户数据和特定服务。
- 安全性:AccessToken 提供了一种安全的方式来控制对 API 的访问。
- 灵活性:允许用户在不同的应用和服务之间共享和传输认证信息。
目前云开发平台有三种 access_token 获取方式:
危险
Access token 数据用户身份的关键凭证,请妥善保管,避免在浏览器等客户端中直接暴露(publishable key 因其匿名身份视具体情况而定)。
- 用户登录获取,例如 用户名密码登录 API/登录 js-sdk 来进行账号密码登录,该方式获取的 access_token 属于 C 端身份,权限根据所登录用户权限而定。
- API Key,可以通过云开发平台获取,有效期可为长期,该方式获取的 access_token 属于管理员端身份,拥有所有资源的操作权限。
- Publishable Key,云开发平台获取,有效期可为长期,该方式获取的 access_token 属于匿名身份,权限为匿名用户权限。
使用 AccessToken
在进行 API 调用时,将 AccessToken 作为请求头的一部分发送。
示例:
Authorization: Bearer <AccessToken>
将 AccessToken
替换为实际的 AccessToken,注意: Bearer 不能省略。
AccessToken 的有效期和刷新
有效期
AccessToken 通常有一个有限的有效期。在有效期结束后,AccessToken 将不再有效。
刷新 AccessToken
在 AccessToken 过期前,可以使用 RefreshToken(如果可用)来获取新的 AccessToken,而无需用户重新认证。
安全性考虑
存储
确保 AccessToken 被安全地存储,避免在客户端暴露给最终用户。
传输
使用 HTTPS 等安全协议传输 AccessToken,防止中间人攻击。
监控
监控 AccessToken 的使用情况,以便在发现异常时及时采取措施。
错误处理
无效 AccessToken
如果使用无效的 AccessToken,API 将返回 401 Unauthorized 错误。
过期 AccessToken
如果 AccessToken 过期,API 可能会返回 401 Unauthorized 错误,并提示需要刷新。
正确获取和管理 AccessToken 是确保应用安全和用户数据保护的关键。遵循最佳实践,确保 AccessToken 的安全性和有效性。