首页 > 解决方案 > 如何在 Microsoft Graph API 的访问令牌中添加权限

问题描述

我想使用 Microsoft Graph API 来发送电子邮件。因此,我遵循的步骤是:我想首先获取访问令牌以通过 Microsoft Send Mail API 发送邮件。为了获取访问令牌,我一直在尝试客户端凭据流来获取访问令牌,并尝试了 Postman 的以下 curl。

curl --location --request POST 'https://login.microsoftonline.com/85173d93-99ef-4dff-9b45-495719659133/oauth2/v2.0/token' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --header 'Cookie: fpc=AnGmtKaDzItFhP3TSH4j_oCmg-KtAwAAAKMJi9gOAAAAdjbDngIAAAB7DYvYDgAAAA; stsservicecookie=estsfd; x-ms-gateway-slice=estsfd' \
    --data-urlencode 'client_id=f0599628-cd3a-4478-84f0-563cb5a10f3b' \
    --data-urlencode 'scope=api://f0599628-cd3a-4478-84f0-563cb5a10f3b/.default' \
    --data-urlencode 'client_secret=e._hTCMiSgT2zr6h0U4_AEg-3.tDE71Nz~' \
    --data-urlencode 'grant_type=client_credentials'

在此处输入图像描述

我正在从此端点获取访问令牌,但此访问令牌中没有权限。

因此,当我尝试发送邮件时,出现以下错误。

在此处输入图像描述

请帮忙。如果需要任何进一步的信息,请告诉我。

在此处输入图像描述

这些是我已经为发送电子邮件添加的权限,但仍然无法弄清楚问题所在。

标签: c#permissionsmicrosoft-graph-apipostmansendmail

解决方案


似乎你还没有接受Grant admin consent你可以像下面那样做:

在此处输入图像描述

注意:添加所需权限后,只需单击Grant admin consent按钮。您的页面应如上图所示。

更新:然后您应该Mail.Send Application Permission接受consent它允许令牌许可的希望。

希望这会有所帮助。如果您仍有任何疑虑,请告诉我。


推荐阅读