基于 Linux 的应用程序 - 需要访问 MS Graph 邮件 API

基于 Linux 的应用程序 - 需要访问 MS Graph 邮件 API

背景:我们有一个基于 Linux 的机器人应用程序(使用 LISP 语言)来读取应用程序支持邮箱并适当地回复客户电子邮件。目前,邮件读取是使用 IMAP 访问协议完成的。根据新的安全策略,我们需要使用 Microsoft Graph API 来访问/读取我们的应用程序邮箱。

由于我们没有任何网络,我们需要使用“资源所有者密码凭证”方法。

由于我们的应用程序不能是登录用户,因此我们无法使用“委派权限”。

我们想使用“应用程序权限”,如“Mail.ReadWrite”和“Mail.Send”。但这些应用程序权限将授予对组织内所有邮箱的访问权限。

所以我的问题是,我的管理员可以提供“管理员同意”以便我的应用程序可以单独访问一个邮箱吗?

答案1

如果您可以以脚本使用的用户身份登录 Azure 等,则可以创建自己的个人访问令牌 -

https://docs.microsoft.com/en-us/azure/devops/integrate/get-started/authentication/pats?view=azure-devops

然后您可以me在 API 调用中使用该参考 -

https://graph.microsoft.com/v1.0/me/mailFolders/Inbox/messages

答案2

你好@pavan你需要让管理员批准应用程序权限,然后让他们设置应用程序访问策略,以便它只能访问特定的邮箱

https://domainaware.github.io/parsedmarc/

使用 Exchange PowerShell 模块中的 New-ApplicationAccessPolicy 命令。如果您需要将策略范围限定到共享邮箱,则可以将它们添加到启用邮件的安全组并将其用作组 ID。

New-ApplicationAccessPolicy -AccessRight RestrictAccess -AppId <CLIENT_ID>" -PolicyScopeGroupId "<MAILBOX>" -Description "Restrict access to specific mailbox."

相关内容