AWS Cognito:在用户属性更改时更新JWT ID令牌

nic*_*icq 5 amazon-web-services amazon-cognito

我想在令牌的有效负载中添加一个特定的属性.此属性很少更改(每月一次),但我希望在此更改后立即更新令牌.

工作流程

在Web /移动应用程序中,用户打开配置文件视图并更改属性X.此属性的当前值也存储在ID令牌中.因此,当用户提交编辑时,X的新值应保存在后端,并应替换ID令牌中的旧值.这很重要,因为属性X确定用户是否能够在app中执行特定的操作.

当有效负载的属性发生变化时,Cognito会做什么?它在下一个请求中发送新版本的JWT ID令牌?

我应该使用刷新令牌吗?或强制退出并登录用户?

Vin*_*aha 2

刷新令牌在此用例中更合适。目前,刷新令牌流并未在用户池的高级 Android SDK 中公开,因为它是由 SDK 在幕后完成的。目前,您可能需要从低级 SDK 调用刷新令牌来解决此问题。(我是 Amazon Cognito 团队的开发人员,我们会将其视为一项功能请求,以允许我们的高级 SDK 执行此操作。)

  • 我们有相同的用例。“从低级 SDK 调用刷新令牌”是什么意思?您的意思是通过某种方式强制“getSession”调用获取新的 ID 令牌,而不是仅返回缓存的会话? (3认同)