第一篇文章......这里有。我试图从共享邮箱显示电子邮件,但遇到“ErrorAccessDenied Access被拒绝。检查凭据,然后再试一次。”
用户确实拥有邮箱的权限,我可以在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,答案暗示这是可能的。如果可以,任何人都可以提供一些关于我缺少的东西的见解?感谢
答案 0 :(得分:0)
目前,authorization_code流不支持访问共享消息,但client_credentials流支持 。为了合并此功能,您必须更改流程以包含此功能。
Here是一篇关于创建client_credentials流程应用程序的文章,如果您对此路线感兴趣的话。