首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候MSAL可以刷新令牌?

什么时候MSAL可以刷新令牌?
EN

Stack Overflow用户
提问于 2019-10-03 22:57:46
回答 1查看 4.7K关注 0票数 0

根据本站,"AcquireTokenSilent能够在令牌接近到期时刷新它(因为令牌缓存也包含刷新令牌)“,这很好,但是MSAL何时允许刷新令牌的限制是什么呢?

这个堆叠溢出问题意味着服务器有时会发送一个特殊的刷新令牌,但当我调用App.PCA.AcquireToken.()时,它会返回一个AuthenticationResult类型的对象,该对象没有任何成员名为refresh (在我们的Xamarin/C#应用程序中),因此似乎实际上不存在单独的令牌,只用于计算刷新吗?

AcquireTokenSilent()需要上网吗?它总是向服务器报到吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-04 06:31:15

AcquireTokenSilent将在令牌缓存中搜索当前帐户的访问令牌。如果找不到它,它将抛出一个MsalUiRequiredException:

  • 如果找到了这样的访问令牌,并且它还没有到期,它将返回这个访问令牌(AuthenticationResult的一部分)。这不需要互联网接入
  • 如果找到这样的访问令牌,但它已过期或即将过期,AcquireTokenSilent将使用令牌缓存中与帐户关联的刷新令牌(而不是通过API出现),并获取新的访问令牌和刷新令牌,将它们存储在缓存中,并返回访问令牌。这个场景确实需要一个因特网连接

在一些微妙的情况下,在刷新令牌的同时,Microsoft标识平台将决定是否需要MFA,或者某种交互,在这种情况下,AcquireTokenSilent可能还会抛出一个MsalUiRequiredException。详细信息请参见https://learn.microsoft.com/en-us/azure/active-directory/develop/msal-handling-exceptions#msaluirequiredexception

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58227899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档