Email 403:提供的用户凭据没有使用Beta API查询电子邮件的必要访问范围

Email 403:提供的用户凭据没有使用Beta API查询电子邮件的必要访问范围,email,debugging,permissions,jwt,microsoft-graph-api,Email,Debugging,Permissions,Jwt,Microsoft Graph Api,我有两个API密钥,它们似乎是使用完全相同的API权限定义的: Calendars.Read offline_access Calendars.Read.Shared openid email profile Files.Read.All Sites.Read.All Mail.Read User.Read Mail.Read.Shared

我有两个API密钥,它们似乎是使用完全相同的API权限定义的:

Calendars.Read          offline_access 
Calendars.Read.Shared   openid         
email                   profile        
Files.Read.All          Sites.Read.All 
Mail.Read               User.Read      
Mail.Read.Shared
我意识到其中一些是多余的(例如日历。阅读和日历。阅读。共享),可能对我正在做的事情过于宽容。我的意图是,一旦我更好地理解这个问题,就缩小范围

我的应用程序正在尝试查询outlook日历和outlook邮件。当我使用其中一个键时,它工作正常,没有问题。如果使用另一个键,则API返回403,并显示以下消息:

{
  "error": {
    "code": "System.UnauthorizedAccessException",
    "message": "\r\n The provided user credentials did not have necessary access-scopes ",
    "innerError": {
      "date": "2020-07-19T19:25:33",
      "request-id": "e1c703df-4fed-4219-b2d4-1436ea762987"
    }
  }
}
当我查看针对每个密钥返回的访问令牌jwt时,它们具有非常不同的scp字段:

工作scp:日历。读取日历。读取。共享电子邮件文件。读取。所有邮件。读取邮件。读取。共享openid配置文件站点。读取。所有用户。读取“

scp失败:Calendars.Read.Shared Files.Read.All Mail.Read.Shared Sites.Read.All User.Read profile openid电子邮件

适用范围如下:
offline\u访问用户.Read Files.Read.All Mail.Read.Shared Calendars.Read.Shared Sites.Read.All

outlook邮件搜索的URL和请求如下所示:
https://graph.microsoft.com/beta/search/query

    "requests": [
        {
            "query": {
                "query_string": {
                    "query": "meeting"
                }
            },
            "from": 0,
            "enableTopResults": "true",
            "entityTypes": [
                "microsoft.graph.message"
            ],
            "size": 20
        }
    ]
}
关于这里发生了什么或者如何进一步调试有什么想法吗

谢谢