microsoft-graph-api - Microsoft Graph API .NET 无法读取共享邮件

标签 microsoft-graph-api

第一篇文章...在这里。我正在尝试显示来自共享邮箱的电子邮件,但遇到“ErrorAccessDenied 访问被拒绝。检查凭据并重试”。

用户确实有邮箱权限,我可以在 Outlook 和 O365 门户中访问/阅读电子邮件。在我的应用程序中,我还分配了 Mail.Read.Shared 和 Mail.ReadWrite.Shared 范围。

起初我尝试了 Graph Explorer

https://graph.microsoft.com/beta/users/<userPrincipalNameOfSharedMailbox>/messages

但相同的 ErrorAccessDenied,假设 Graph Explorer 没有 Mail.Read.Shared 范围。

接下来我尝试修改Microsoft Graph Snippets Sample for ASP.NET 4.6

我添加了 Mail.Read.Shared 和 Mail.ReadWrite.Shared 并被提示接受这些权限

• 读写您可以访问的邮件

• 阅读您可以访问的邮件

但是当我尝试从共享邮箱中获取邮件时出现同样的错误

IUserMessagesCollectionPage messages = await graphClient.Users["userPrincipalNameOfSharedMailbox"].Messages.Request().GetAsync();

这里有一个类似的帖子Microsoft Graph API SDK .NET Issues getting other users emails答案暗示这是可能的。如果是的话,任何人都可以提供一些关于我所缺少的东西的见解吗?谢谢

最佳答案

目前,authorization_code 流程不支持访问共享消息,但 client_credentials 流程支持。为了合并此功能,您必须更改流程以合并此功能。

Here是一篇关于创建 client_credentials 流应用程序的文章,如果您有兴趣走这条路线的话。

关于microsoft-graph-api - Microsoft Graph API .NET 无法读取共享邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40813610/

相关文章:

microsoft-graph-api - C# Microsoft.Graph 版本 4.54.0 没有 graphClient.Groups.GetAsync( 但升级到 5.1.0 会中断 60 条语句

microsoft-graph-api - 在 Graph API 中过滤 'officeLocation' 上的用户

microsoft-graph-api - Microsoft Graph API 状态代码 404 未找到错误

azure-active-directory - Microsoft Identity Web - 如何获取用户登录事件?

azure - 对于通过 MS Graph 更新 Azure 中的用户配置文件,我是否必须是全局管理员?

azure-active-directory - 资源 <Random Guid> 不存在或其查询的引用属性对象之一不存在

microsoft-graph-api - 使用仅限应用的 token 时,Microsoft Graph 返回 "The token contains no permissions, ..."

javascript - 是否可以将 microsoft-graph 客户端 secret 放入源代码中?

outlook - Microsoft Graph 创建事件 - 说明中的换行符出现在 Outlook 日历中,但不在 Teams 日历中

graph - 如何使用 Microsoft Graph 更新 SharePoint 中的查找字段和用户字段?