我根据本文整合微软图形API为5 MVC的Web应用程序,以及使用ADAL开放ID连接:正确实施TokenCache
https://azure.microsoft.com/en-us/resources/samples/active-directory-dotnet-webapp-openidconnect-v2/
我想知道,如何我可以提供不依赖于会话状态的TokenCache的实现吗?我应该向AcquireTokenForClientAsync提供什么参数?现在,我只是提供一个类的新实例来满足方法的签名。我宁愿刷新令牌自动处理,正如我在别处读过的。但是,如果您为TokenCache参数提供null,则令牌缓存不会自动处理?以下是我如何获取令牌并在每次调用它时提供新的TokenCache()的示例。
ConfidentialClientApplication daemonClient = new ConfidentialClientApplication(
AuthConstants.ClientId,
String.Format("https://login.microsoftonline.com/{0}/v2.0", AuthConstants.TenantId),
AuthConstants.RedirectUri,
new ClientCredential(AuthConstants.ClientSecret),
null,
new TokenCache());
AuthenticationResult authResult = await daemonClient.AcquireTokenForClientAsync(new string[] { "https://graph.microsoft.com/.default" });
return authResult.AccessToken;
谢谢你,当你提供这个实现令牌缓存的,不令牌的刷新自动发生?在框架尝试刷新它之前,如何知道令牌有效多久? –