2016-12-15 129 views

回答

1

只是建立在最后的答案。您应该遵循本文中的信息:https://graph.microsoft.io/en-us/docs/authorization/app_only,它会通过使用OAuth2.0 client_credential流来获取应用程序访问令牌(无用户上下文),包括如何让客户租户中的管理员授权访问您的多租户应用程序。上面的答案使用auth客户端库(ADAL)向您展示如何获取令牌,但这也可以使用HTTP请求完成。

注意:您不需要担心服务负责人等与上述文件链接 - 这是通过同意/授权流程在盖子下发生的所有机制。

希望这会有所帮助,

1

您可以使用基于证书的应用程序认证。

当您向应用程序的清单中添加了X.509证书时,您应该可以使用类似下面的内容来获取应用程序令牌。请记住,这是一个应用程序登录名,所以权限需要位于应用程序上,而不是登录用户。

var cert = new X509Certificate2(certBytes, certificatePassword); 
var clientAssertionCertificate = new ClientAssertionCertificate(clientId, cert); 

var authenticationResult = 
    await authenticationContext.AcquireTokenAsync(resourceToAuthenticate, clientAssertionCertificate);