You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整EWS应用OAuth认证Manifest以限制访问特定邮箱

如何限制OAuth认证的EWS应用仅访问特定邮箱

首先需要明确:无法仅通过修改manifest的requiredResourceAccess JSON实现仅访问特定邮箱,因为原配置中的dc890d15-9560-4a4c-9b7f-a736ec74ec40对应的是全局的full_access_as_app角色权限,该权限本身就允许应用访问所有邮箱。要实现仅访问特定邮箱,需要调整应用权限配置+手动分配邮箱权限两步操作:

1. 调整manifest的requiredResourceAccess配置

将原全局权限替换为细粒度的Exchange应用权限,比如仅读取邮箱或读写邮箱权限。以下是示例配置(以Mail.Read和Mail.Write应用权限为例):

{
    "resourceAppId": "00000002-0000-0ff1-ce00-000000000000",
    "resourceAccess": [
        {
            "id": "570282fd-fa5c-430d-a7fd-fc8dc98a9dca",
            "type": "Role"
        },
        {
            "id": "0e263e50-5827-48a4-b97c-d940288653c7",
            "type": "Role"
        }
    ]
}
  • 权限ID说明:
    • 570282fd-fa5c-430d-a7fd-fc8dc98a9dca:对应Mail.Read应用权限(允许读取邮箱内容)
    • 0e263e50-5827-48a4-b97c-d940288653c7:对应Mail.Write应用权限(允许修改邮箱内容)
  • 可根据实际需求增减权限,比如仅保留Mail.Read即可。

2. 给应用分配特定邮箱的访问权限

完成manifest配置并授予应用权限后,需要通过Exchange Online PowerShell给应用分配目标邮箱的访问权限:

  1. 连接Exchange Online PowerShell
  2. 执行以下命令(替换占位符内容):
Add-MailboxPermission -Identity "目标邮箱地址/显示名称" -User "Azure AD应用的ObjectID" -AccessRights FullAccess -InheritanceType All
  • 如果只需要读取权限,可将AccessRights改为ReadPermission;若需要读写,保持FullAccess即可。
  • 可重复执行该命令,给多个特定邮箱分配权限。

关键说明

  • 细粒度的Exchange应用权限本身不会自动赋予应用访问任何邮箱的权限,必须通过Add-MailboxPermission手动绑定到特定邮箱。
  • 若仍使用原full_access_as_app权限,即使执行邮箱权限分配命令,应用依然能访问所有邮箱,因此必须先替换为细粒度权限。

内容的提问来源于stack exchange,提问作者9001_db

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 00:25:19