资源'00000003-0000-0000-c000-000000000000'上不存在的范围"Mail.ReadBasic.All"



我正在连接到Microsoft Graph API 以下载所有用户电子邮件。我让它为进行身份验证的用户下载所有电子邮件,- 它适用于范围 Mail.ReadBasic。但是,当我尝试使用范围Mail.ReadBasic.All进行身份验证为"全局管理员"时,我收到以下错误:

AADSTS650053: The application 'xxx' asked for scope 'Mail.ReadBasic.All' that doesn't exist on the resource '00000003-0000-0000-c000-000000000000'. Contact the app vendor.

应用已允许在 Azure 门户的设置中使用范围 Mail.ReadBasic.All。

def authenticate():
parameters = {
"client_id": settings["app_id"],
"response_mode": "form_post",
"scope": "Mail.ReadBasic.All User.ReadBasic.All offline_access",
"response_type": "code",
"redirect_uri": "http://localhost:8000/",
"tenant": settings["tenant"]
}
url = "https://login.microsoftonline.com/common/oauth2/v2.0/authorize?" + urllib.parse.urlencode(parameters)
return url

Mail.ReadBasic.All 仅可用作应用程序权限范围,而不用作委派权限范围。可以在应用程序的 portal.azure.com 应用程序注册屏幕中同意此操作,并在其中使用管理员同意使其正常工作。

目前仅在/beta 终结点上支持此功能,在/v1.0 终结点上也不受支持,因为它是预览权限范围。

相关内容

最新更新