【发布时间】:2018-02-10 14:35:02
【问题描述】:
我正在将 Microsoft Graph API 集成到 MVC 5 Web 应用程序中,并根据本文使用 ADAL Open ID Connect:
https://azure.microsoft.com/en-us/resources/samples/active-directory-dotnet-webapp-openidconnect-v2/
我想知道,如何提供不依赖于会话状态的 TokenCache 实现?我应该向 AcquireTokenForClientAsync 提供什么参数?现在,我只是提供类本身的一个新实例以满足方法的签名。正如我在别处所读到的,我宁愿自动处理刷新令牌。但是,如果您为 TokenCache 参数提供 null ,则不会自动处理令牌缓存?这是我如何获取令牌并在每次调用它时提供 new 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;
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-5 azure-active-directory microsoft-graph-api