The mentioned functionalities may be restricted depending on the purchased software license.
Microsoft Graph API 邮件发送设置
本指南解释了如何授予您组织的管理员同意我们的多租户邮件发送应用程序,并限制其访问权限,以便它只能从指定的邮箱发送电子邮件(例如,noreply@yourdomain.com
)。即使您有限的 IT 经验,这里提供的逐步说明和先决条件将帮助您使用安装在 PC 上的工具完成设置。
注意:
如果您需要帮助,请在 eniris.io/support 创建支持票。
目录
概述
我们的邮件发送应用程序使用 Microsoft Graph API 的应用程序权限从指定的邮箱发送电子邮件。要启用此功能,您的管理员必须:
- 授予该应用程序租户范围的同意。
- 向我们提供您的域名、租户 ID 和您想要使用的电子邮件地址(例如,
noreply@yourdomain.com
)。
这些详细信息可以在您的租户概述中找到,访问 Microsoft Entra。
先决条件
在您开始之前,请确保您具备以下条件:
- 管理员凭据: 您必须拥有 Microsoft 365 租户的全局管理员权限。
- 访问 Microsoft Entra: 您需要在 Microsoft Entra 查看租户详细信息。
- 您 PC 上的 PowerShell:
- Windows PowerShell 或 PowerShell Core。
- 通过运行以下命令安装 ExchangeOnlineManagement 模块:
Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
- 基本知识: 熟悉在 PowerShell 中复制和粘贴命令。如果您是初学者也不用担心——以下步骤详细且易于理解。
第 1 步:授予管理员同意
-
构造管理员同意 URL:
使用以下 URL 格式。将<YOUR-DOMAIN-NAME>
替换为您的实际域名(例如,如果您的域名是 "contoso.com",请使用该域名):https://login.microsoftonline.com/<YOUR-DOMAIN-NAME>/adminconsent?client_id=03126c25-5828-4b2e-aa6d-d97380cb1cb5&redirect_uri=https://eniris.io
-
访问 URL:
让您的 Microsoft 365 全局管理员在浏览器中登录并导航到该 URL。他们将看到一个同意对话框,列出我们的应用程序请求的权限(例如,Mail.Send)。 -
授予同意:
管理员应点击 "接受" 以授予同意。此操作将在您的租户中为我们的应用创建一个服务主体,并允许其发送电子邮件。 -
通知我们:
在授予同意后,请在 eniris.io/support 创建一个票证,提供以下详细信息:
- 您的域名。
- 您的租户 ID(在 Microsoft Entra 租户概述 中找到)。
- 您希望用于发送邮件的电子邮件地址(例如,
noreply@yourdomain.com
)。
第 2 步:捕获您的租户详细信息
我们入职流程将在管理员授予同意时自动捕获您的租户 ID。然而,如果您需要手动验证,您可以:
- 登录 Microsoft Entra。
- 从租户概述页面复制您的 租户 ID。
第 3 步:配置访问限制
出于安全最佳实践,我们将创建一个专用的安全组,并使用它来限制应用的访问,仅限于您指定的邮箱。这实现了最小权限原则,确保应用只访问绝对必要的内容。
创建所需的邮件安全组
-
登录 Microsoft 365 管理中心:
访问 admin.microsoft.com 并使用您的管理员帐户登录。 -
创建安全组:
- 导航至 "组" > "活动组"
- 点击 "添加组"
- 选择 "安全" 作为组类型,然后点击 "下一步"
- 输入名称(例如,"仅限 Noreply 访问")和描述
- 将
noreply@yourdomain.com
帐户添加为成员 - 点击 "下一步" 然后 "创建组"
应用访问限制
-
打开 PowerShell:
以管理员身份在您的 PC 上运行 PowerShell。 -
连接到 Exchange Online:
安装 ExchangeOnlineManagement 模块(如果尚未安装),然后连接:Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
Connect-ExchangeOnline -UserPrincipalName "<YOUR-ADMIN-EMAIL>" # 例如:admin@yourdomain.com -
创建应用访问策略:
运行以下命令。将<YOUR-SECURITY-GROUP-EMAIL>
替换为您的安全组的实际电子邮件地址或对象 ID:New-ApplicationAccessPolicy -AccessRight RestrictAccess -AppId "03126c25-5828-4b2e-aa6d-d97380cb1cb5" -PolicyScopeGroupId "<YOUR-SECURITY-GROUP-EMAIL>" -Description "限制应用访问仅限 noreply 邮箱"
-
验证政策:
通过运行以下命令来测试政策是否有效(用您的实际 noreply 邮箱地址替换):Test-ApplicationAccessPolicy -Identity "<YOUR-NOREPLY-EMAIL>" -AppId "03126c25-5828-4b2e-aa6d-d97380cb1cb5"
安全考虑
- 数据隔离: 在您的租户中创建的服务主体确保应用仅在政策允许的情况下访问。
- 最小权限: 应用仅请求 Mail.Send 权限,并进一步限制到单个邮箱。
- 审计: 我们建议定期审核您的服务主体和应用访问政策。
其他信息和资源
常见问题:
同意错误:
- 验证管理员帐户权限,访问 Microsoft Entra 角色
- 检查 同意故障排除指南
- 确保 URL 正确构建
PowerShell 错误:
- 检查 ExchangeOnlineManagement 模块是否已安装且是最新版本
- 验证您的管理员凭据是否具备足够权限
策略验证:
- 使用
Test-ApplicationAccessPolicy
验证访问限制 - 查阅 应用访问政策文档