如何刷新Azure AD B2C中的令牌,而不是访问和ID令牌,以及终生令牌 [英] How to refresh the token in Azure AD B2C, not the Access & ID one, the "Lifetime" one

查看:9
本文介绍了如何刷新Azure AD B2C中的令牌,而不是访问和ID令牌,以及终生令牌的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Android上使用MSAL for B2C,我一直在遵循this示例。第一次登录时使用#1获取令牌/运行用户流和#3静默获取令牌当我需要调用API且我的令牌已过期时使用#3

静默令牌似乎映射到Azure门户中的

SUSI的用户流似乎映射到门户中的生存期(天)

我认为90天已到,那么我如何刷新令牌,以及如何判断我是否接近90天?

可能我没有完全理解这一点。

更新

好的,我看到下面的答复很有帮助,但我不知道根据提供的信息,我的用例是否可以实现,或者如何实现。

以下是使用案例: 我有一个可以在断开模式下使用的应用程序,而且经常在共享设备上使用。该应用程序确实需要连接才能下载并在设备上进行用户注册。当设备连接时,它也会将数据发送到云中,但否则会将数据存储在本地。将数据发送到云时,需要静默刷新令牌。

所有这些都一直有效,直到达到90天,我需要重新进行身份验证。这将是一个好政策,但考虑到应用程序的断开连接性质,随着倒计时越来越近,我想开始使用快餐栏询问用户。根据响应,现在有办法确定90天的到期时间,我将其视为配置文件。getExpiresOn()似乎保存访问令牌的到期日期(60分钟),并在90天的配置文件用完时恢复到创建配置文件的日期。至少我认为这就是正在发生的事情。我希望我有权访问这两个日期,但我猜我没有,这就是我认为下面证实的。

还有其他人有这样的用例吗?这似乎并不少见,可以看出90天令牌到期日的必要性。

推荐答案

若要完全理解这一点,您需要了解以下设置与这些设置的含义之间的区别。

刷新令牌生存期默认为14天,即您可以在刷新令牌发布后14天内兑换。当您兑换刷新令牌时,将颁发新的访问、ID和刷新令牌对。新刷新令牌的有效期再次为14天。

  • 如果将刷新令牌滑动窗口生存期设置为有界,并且生存期为90天,则无论何时颁发最新的刷新令牌,用户都需要重新进行身份验证。

  • 如果您将刷新令牌滑动窗口生存期设置为无过期生存期将无法再配置。在这种情况下,如果刷新令牌在每14天内兑换一次(在刷新令牌生存期中配置),用户将永远不需要重新进行身份验证。

如果您不想强制用户在90天后重新进行身份验证,您可以将生存期设置为365天的最大值,或者将刷新令牌滑动窗口生存期设置为无过期

在刷新令牌到期之前,您不会收到任何通知。但是,您可以通过Graph API检查signInSessionsValidFromDateTime属性,或通过PowerShell检查renhTokensValidFromDateTime属性,以查看上次向用户颁发刷新令牌的时间。

这篇关于如何刷新Azure AD B2C中的令牌,而不是访问和ID令牌,以及终生令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆