AcquireTokenAsync 不返回新令牌
AcquireTokenAsync not returning a new token
我的 WebAPI 应用程序在启动时从服务获取令牌。然后,此令牌将用于共享 HTTP 客户端以防止端口耗尽。
当这个令牌即将过期时,我想获得一个新的并将其保存在我的服务中以供重复使用。
在我的实现中,检索了一个令牌 - 但是它与原始令牌的有效期相同:
// Retrieve the token and assign to AuthenticationResult
private async Task GetAPIToken()
{
AuthenticationContext authContext = new AuthenticationContext(Authority);
var clientCredential = new ClientCredential(clientId, clientSecret);
// Same token after multiple calls
AuthenticationResult = await authContext.AcquireTokenAsync(resourceId, clientCredential).ConfigureAwait(false);
}
如何保存最新的身份验证令牌?
这里的问题是 AuthenticationContext authContext = new AuthenticationContext(Authority);
将缓存令牌并在令牌未过期时检索它。
我自己禁用缓存并管理令牌生命周期是一种解决方案:
AuthenticationContext authContext = new AuthenticationContext(Authority, null);
我的 WebAPI 应用程序在启动时从服务获取令牌。然后,此令牌将用于共享 HTTP 客户端以防止端口耗尽。
当这个令牌即将过期时,我想获得一个新的并将其保存在我的服务中以供重复使用。
在我的实现中,检索了一个令牌 - 但是它与原始令牌的有效期相同:
// Retrieve the token and assign to AuthenticationResult
private async Task GetAPIToken()
{
AuthenticationContext authContext = new AuthenticationContext(Authority);
var clientCredential = new ClientCredential(clientId, clientSecret);
// Same token after multiple calls
AuthenticationResult = await authContext.AcquireTokenAsync(resourceId, clientCredential).ConfigureAwait(false);
}
如何保存最新的身份验证令牌?
这里的问题是 AuthenticationContext authContext = new AuthenticationContext(Authority);
将缓存令牌并在令牌未过期时检索它。
我自己禁用缓存并管理令牌生命周期是一种解决方案:
AuthenticationContext authContext = new AuthenticationContext(Authority, null);