gpt4 book ai didi

javascript - 如何使用 Amazon Cognito sdk 实现 *Remember me* 选项?

转载 作者:行者123 更新时间:2023-12-04 03:03:14 25 4
gpt4 key购买 nike

我正在尝试在 Angular2 项目中使用 amazon-cognito-identity-js 为身份验证工作流实现记住我的选项。 Issue reference .

当前身份验证流程

  • 如果选中“记住我”选项,则将 token 和 JWT token (特别是这样做,因为我需要一些其他用户信息,例如组和 Angular 色)保存到带有到期日期的 cookie。 (例如:5 天)
  • Auth Guard(即检查所有路由更改,即使是根路由)将首先检查 token (不是 JWT)
  • 如果 cookie 为空,则重定向到登录页面。
  • 如果 cookie 存在则检查 session (使用 sdk 的功能), session 无效然后重定向到登录页面。
  • 如果 session 有效,则更新 JWT(不是 token )并且保护返回 true。

  • 我认为这看起来不错,但我遇到了一些意外错误,不是经常出现,而是在 1 小时过去后(实际 session 已过期)。

    问题
  • 我是否也必须更新 token ?在 step 5 .
  • this.cognitoUtil.getCurrentUser();异步函数?
  • cognitoUser.getSession() 将返回什么如果 session 过期?
  • 如果问题3返回 session (无论是有效还是无效),session.isValid()的返回值是多少? ?
  • 最佳答案

  • 是的。我的意思是我不知道你所说的 token 和 JWT token 是什么意思。就 Cognito token 而言,有 id、access 和 refresh token 。 Id 和访问 token 在一小时后到期,并在 30 天后刷新 token (默认)。见 this doc供引用。
  • 我不这么认为。我的意思是 amazon-cognito-identity-js SDK 使用普通的 javascript SDK 并且有 getCurrentUser()只是从本地存储中检索用户。
  • SDK 将自动尝试使用刷新 token (默认有效期为 30 天)刷新 id/访问 token 。
  • 返回 bool 值。见 this SDK 定义。
  • 关于javascript - 如何使用 Amazon Cognito sdk 实现 *Remember me* 选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47066681/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com