第一篇文章......在这里 . 我试图从共享邮箱显示电子邮件,但遇到“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,答案暗示这是可能的 . 如果可以,任何人都可以提供一些关于我缺少的东西的见解?谢谢
1 回答
目前,authorization_code流不支持访问共享消息,但client_credentials流支持它 . 要合并此功能,您必须更改流程以包含此功能 .
Here是一篇关于创建client_credentials流程应用程序的文章,如果您对此路线感兴趣的话 .