You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用AWS Amplify Gen 2获取Cognito用户刷新令牌?

在AWS Amplify Gen 2中获取Cognito用户的刷新令牌

默认情况下,AWS Amplify Gen 2(基于Amplify JS v6)不会在fetchAuthSession的返回结果中暴露刷新令牌,这是出于前端安全考量。但你可以通过调整调用参数来获取它,具体操作如下:

  1. 修改fetchAuthSession调用参数
    在调用fetchAuthSession时添加includeRefreshToken: true选项,强制返回刷新令牌:

    import { Amplify } from "aws-amplify"
    import { fetchAuthSession } from "aws-amplify/auth"
    
    const session = await fetchAuthSession({
      includeRefreshToken: true
    });
    
    // 提取刷新令牌的字符串形式
    const refreshToken = session.tokens?.refreshToken?.toString();
    
  2. 确认用户池配置
    确保你的Cognito用户池已启用刷新令牌(默认处于启用状态)。若未开启,需在AWS控制台的用户池应用客户端设置中勾选"允许刷新令牌"选项。

  3. 安全提醒

    • 传输刷新令牌到后端时必须使用HTTPS,防止明文泄露。
    • 后端存储刷新令牌时需加密,避免非法获取。
    • 切勿在前端本地(如localStorage)存储刷新令牌,遵循Amplify内置的安全存储机制。

内容的提问来源于stack exchange,提问作者lexa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 03:34:58