【问题标题】:Office 365 Authentication with Microsoft Graph使用 Microsoft Graph 进行 Office 365 身份验证
【发布时间】:2021-12-24 23:57:07
【问题描述】:

我之前使用从我的 365 客户端加载项中的 Office.context.mailbox.getCallbackTokenAsync 获得的令牌在我的应用程序 Web 服务器上使用以下代码进行身份验证:

ExchangeService service = new ExchangeService();
service.Credentials = new OAuthCredentials(token);
service.Url = new Uri(ewsUrl);

我现在正尝试将我的 EWS 服务器代码转换为 Microsoft Graph,但我无法使用该 365 令牌访问这些 API。我尝试过类似的方法,但无济于事:

var graphServiceClient = new GraphServiceClient(
                new DelegateAuthenticationProvider((requestMessage) =>
                {
                    requestMessage
                        .Headers
                        .Authorization = new AuthenticationHeaderValue("bearer", token);

                    return System.Threading.Tasks.Task.CompletedTask;
                }));

我在 Azure 中的权限应该没问题,因为我已经能够获得各种物品并保存到系统中。感谢您的帮助!

【问题讨论】:

    标签: outlook microsoft-graph-api office365 exchangewebservices


    【解决方案1】:

    Graph 和 EWS 在其令牌中具有不同的受众,您不能将两者混为一谈。

    【讨论】:

    • 感谢您的回复。如果在 Office.context.mailbox.getCallbackTokenAsync 方法调用中使用 options.isRest = true 会怎样?基本上我在问是否有任何方法可以将图形 API 与 Office 365 加载项结合使用。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多