Azure 当刷新令牌和用户帐户详细信息未缓存在令牌缓存中时,是否有任何方法可以使用MSAL.net以静默方式获取令牌

Azure 当刷新令牌和用户帐户详细信息未缓存在令牌缓存中时,是否有任何方法可以使用MSAL.net以静默方式获取令牌,azure,caching,oauth,Azure,Caching,Oauth,默认情况下,MSAL.net在内存缓存中缓存刷新令牌和用户详细信息。MSAL.net还支持分布式缓存,如redis/sql db等。但是,无论是内存缓存还是分布式缓存,由于任何技术问题,如果缓存失败,是否有任何方法可以静默获取不同作用域的令牌,或者更新即将过期的现有有效令牌 例如:用户登录并获取有效期为60分钟的访问令牌,但系统无法缓存刷新令牌和其他用户详细信息。现在,如果用户想要为不同的作用域获取一个新的令牌,或者在原始令牌过期之前以静默方式获取一个新的访问令牌,MSAL.net将使用 app

默认情况下,MSAL.net在内存缓存中缓存刷新令牌和用户详细信息。MSAL.net还支持分布式缓存,如redis/sql db等。但是,无论是内存缓存还是分布式缓存,由于任何技术问题,如果缓存失败,是否有任何方法可以静默获取不同作用域的令牌,或者更新即将过期的现有有效令牌

例如:用户登录并获取有效期为60分钟的访问令牌,但系统无法缓存刷新令牌和其他用户详细信息。现在,如果用户想要为不同的作用域获取一个新的令牌,或者在原始令牌过期之前以静默方式获取一个新的访问令牌,MSAL.net将使用

application.GetAccountAsync(accountIdentifier)
从缓存和

application.AcquireTokenSilent(scopes, account).WithForceRefresh(forceRefresh) 
如果forceRefresh=true,则向AD发出获取新令牌的请求

由于当前缓存中没有存储任何内容,因此此方法返回null。在这个场景中,是否有任何方法可以直接调用AD并获取令牌


由于MSAL.net不公开刷新令牌,并且在使用MSAL.net时没有获取刷新令牌的属性或方法,所以am卡在这里。在这种情况下,我需要一种直接从AD获取代币/续订代币的方法。

您找到解决方案了吗?您能分享吗?您找到解决方案了吗?您能分享吗?