c# - Graph Api 读取电子邮件的权限
问题描述
我有以下 c# 代码。我正在尝试按照以下链接使用图形 api 阅读电子邮件以换取 365
IConfidentialClientApplication cca = ConfidentialClientApplicationBuilder
.Create("myAppId")
.WithTenantId("myTenantId")
.WithClientSecret("myClientSecret")
.Build();
ClientCredentialProvider ccp = new ClientCredentialProvider(cca);
GraphServiceClient client = new GraphServiceClient(ccp);
var users = await client.Users.Request()
.GetAsync();
我执行它并收到以下错误:
Microsoft.Graph.ServiceException:'代码:Authorization_RequestDenied 消息:权限不足,无法完成操作。
根据屏幕截图,我已授予 mail.read 和 user.read 权限。
有什么建议吗?
谢谢。
解决方案
如您的代码所示,您使用使用应用程序权限的客户端凭据流。
如果要用于var users = await client.Users.Request().GetAsync();
列出用户,则需要设置其中一项应用权限。
推荐阅读
- html - 通过堆叠html元素生成一个简单的十字架
- google-apps-script - 如何仅从范围中获取过滤后的值?
- ruby-on-rails - 每当 gem 出现在本地时,我都会遇到问题
- ios - 从文本字段在 tableView 中添加新单元格
- amazon-web-services - aws glue python shell 作业与 spark 作业的最佳用例是什么?
- scala - 更新映射定义是使用 Scala 的 ELlasticSearch
- javascript - 不同数组中相同对象的内存分配
- laravel - 我怎样才能重写它,这样它就不需要在 foreach 之外的 return 语句
- c# - 从另一个窗口访问 MainWindow 列表(保护)
- tableau-api - tableau - 自动更新工作台中所有数据源的密码