【问题标题】:Azure AD App-only token to consume outlook REST API用于使用 Outlook REST API 的仅限 Azure AD 应用程序的令牌
【发布时间】:2017-08-13 07:42:28
【问题描述】:

我正在.net 中开发一个控制台应用程序,它将使用 Azure AD 应用程序发送邮件。我遵循了从生成证书到在 Azure AD 中注册应用程序的所有步骤。然后使用 Microsoft graph API 提供应用程序权限(以任何用户身份发送邮件)并提供“授予权限”作为管理员同意。

在我的控制台应用程序代码中,我使用以下 Outlook api 发送邮件 资源网址 — https://outlook.office.com/api/v1.0/users/{my email account}/sendmail。在为我的应用提供授予权限后,我仍然面临401:unauthorized error.

【问题讨论】:

标签: token azure-active-directory outlook-api


【解决方案1】:

您已授予 Microsoft Graph API 权限,因此您需要使用它。

https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/api/user_sendmail

您需要使用的 URL 如下:

POST https://graph.microsoft.com/v1.0/users/{id | userPrincipalName}/sendMail

在内部,图形 API 确实调用了您提到的 API。但是您的令牌用于图表。不是 Outlook API。

您还提到了资源 URL。图 API 资源 URL 为 https://graph.microsoft.com

【讨论】:

  • 感谢您发布@juunas 我确实将此网址用作资源网址 “graph.microsoft.com/v1.0/users{id | userPrincipalName}/sendMail”,但我仍然面临 401 未经授权的问题。
  • 您将不得不添加用于获取问题令牌的代码。显然访问令牌有问题,或者您将其添加到错误的请求中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-30
  • 1970-01-01
  • 1970-01-01
  • 2020-03-28
  • 1970-01-01
  • 2023-01-12
相关资源
最近更新 更多