在没有用户的情况下访问 GraphAPI 时在邮箱文件夹上创建订阅所需的权限

Permissions required to create subscriptions on a mailbox folder while accessing GraphAPI without user

我创建了一个具有应用程序权限的应用程序 MailboxSettings.ReadWrite

然后我构建了一个 Web API 来创建对邮箱文件夹的订阅。

我成功获取了授权令牌并收听了来自应用程序的测试通知。但是当我尝试创建订阅时出现以下错误:

{
     Code: ExtensionError
     Message: Operation: Create; Exception: [Status Code: Unauthorized; Reason: Unauthorized]
}

这是我创建订阅的方式:

var subscription = new Subscription
{
    Resource = $"users/{CurrentUserId}/mailFolders('Inbox')/messages",
    ChangeType = "created,updated",
    NotificationUrl = ConfigurationManager.AppSettings["ida:NotificationUrl"],
    ClientState = Guid.NewGuid().ToString(),
    ExpirationDateTime = DateTime.UtcNow + new TimeSpan(0, 0, 15, 0)
};

var newSubscription = await graphClient.Subscriptions.Request().AddAsync(subscription);

我的问题是,我的应用程序需要哪些权限才能创建订阅?

我在没有用户的情况下使用 Microsoft Graph 访问。 https://docs.microsoft.com/en-us/graph/auth-v2-service。我想 运行 我的 API 无人值守。

根据doc, the Mail.Read permission will be enough. You need admin consent the permission for the AD App, see this link