配置 Microsoft 365 REST API
配置 REST API 是在您的 Microsoft 365 环境中生成报告和管理数据的关键步骤。REST API 实现了 ADManager Plus 与 Microsoft 365 之间的无缝集成,使您能够自动执行用户管理、报告等任务。
您可以通过输入必要的凭据和设置手动配置 REST API,或通过自动化流程简化配置并确保顺利集成。正确的配置对于确保从您的 Microsoft 365 帐户准确检索数据和生成报告至关重要。
手动配置
如果在自动配置过程中遇到权限问题,或者您想更改应用程序所需的权限,可以手动配置 Rest API 访问权限。
创建 Entra ID 应用程序的步骤
- 使用具有创建 Entra ID 应用程序权限的 全局管理员 或其他用户帐户的凭据登录 Microsoft Entra ID 管理中心。
- 导航至 应用注册 > 新注册。
- 如果您已创建 ADManager Plus 应用程序,请选择所需的应用程序名称。否则,在 名称 字段中输入要创建的 ADManager Plus 应用程序的名称。
- 根据您的组织需求,在 支持的帐户类型 下选择支持的帐户类型。
- 保持 重定向 URI(可选) 为空;您将在接下来的步骤中进行配置。
- 点击 注册 完成初始应用注册。
- 您现在将看到已注册应用的 概览 页面。
- 在侧边栏中导航至 管理 > 身份验证。
- 在 平台配置 下点击 添加平台。
- 在“配置平台”弹出窗口中,点击 Web,位于 Web 应用程序 下。
- 在 重定向 URI 字段中输入以下链接。每次只能输入一个链接。输入链接后,点击 配置 并重复操作,直到所有链接均已配置。
- http://localhost:port_number/webclient/VerifyUser — 如果通过 localhost 访问 ADManager Plus,它将把重定向 URI 设置为 localhost,以便从 Microsoft 接收身份验证令牌,而不是使用主机名或 IP 地址。
- https://identitymanager.manageengine.com/api/public/v1/oauth/redirect — 如果通过主机名访问 ADManager Plus 且未启用 HTTPS,由于 Microsoft 的限制,产品无法通过 HTTP 指定主机名接收身份验证令牌。因此,identitymanager.manageengine.com 将作为中继服务器,通过安全方式与产品共享令牌。
- https://demo.m365managerplus.com/oauth/redirect — 如果通过主机名访问 ADManager Plus 且未启用 HTTPS,由于 Microsoft 的限制,产品无法通过 HTTP 指定主机名接收身份验证令牌。因此,demo.m365managerplus.com 将作为中继服务器,通过安全方式与产品共享令牌。此中继机制对于新租户配置不再需要。
- https://manageengine.com/microsoft-365-management-reporting/redirect.html — 如果通过主机名访问 ADManager Plus 且未启用 HTTPS,由于 Microsoft 的限制,产品无法通过 HTTP 指定主机名接收身份验证令牌。因此,manageengine.com 将作为中继服务器,通过安全方式与产品共享令牌。此中继机制对于新租户配置不再需要。
注意:
重定向 URI 应满足以下要求:
- 长度必须少于 256 个字符。
- 不应包含通配符字符。
- 不应包含查询字符串。
- 必须以 HTTPS 或 http://localhost 开头。
- 必须是有效且唯一的 URL。
- 对于 HTTP,URI 值为:http://localhost:8080。如果使用 HTTP,则不能用计算机名或 IP 地址替代 localhost。
- 对于 HTTPS,URI 值为:https://192.345.679.345:8080 或 https://:8080(其中 是安装 ADManager Plus 的计算机主机名)。
- 重定向 URI 格式根据 ADManager Plus 中配置的连接类型(HTTP/HTTPS)而异。

- 点击 保存。
- 在左侧窗格中点击 清单,并在代码中搜索作为数组的 requiredResourceAccess。
-
Copy the contents of 此文件 paste them within the code as highlighted in the image below, and click 保存. Skip this step if you want to 修改推荐的 REST API 权限.
注意:
- 如果您的租户是在 Azure China 创建的,请复制 此文件 的全部内容,并粘贴到下图所示的高亮部分。

注意: 仅复制粘贴从开方括号到闭方括号的内容。确保所有标点符号均正确保留。粘贴文件内容后,应如下图所示。

- 从左侧窗格点击 API 权限,然后点击 为 授予管理员同意,该选项位于 已配置权限 部分下。根据需要授予必要权限。API 权限及其范围详见 此表。

- 在弹出窗口中点击 Yes。
- 从左侧窗格的 管理 下点击 证书和密码。
- 在 Client secrets 部分,点击 New client secret。
- 本部分为 ADManager Plus 生成应用密码。在弹出窗口的 描述 字段中,提供一个名称以识别该密码所属的应用。
- 选择密码的过期时间。
- 点击 添加。
- 复制 值 下的字符串并保存。这是配置 Microsoft 365 租户时在 ADManager Plus 中需要的 应用程序密钥。
-
Go to the 证书 section and click 上传证书. Upload your application certificate as a .cer file. If you have an SSL certificate, the same can be used here. Otherwise, a 自签名证书 must be created in order to proceed.
注意: 证书认证用于安全联系 Microsoft 365 并获取数据。手动配置时,系统会要求您输入应用程序密钥并上传应用程序证书。

- 现在转到左侧窗格的 Overview 部分。
- 复制 应用程序(客户端)ID 和 对象 ID 值并保存。配置 ADManager Plus 门户中的租户时需要这些值。

创建自签名证书的步骤
-
Run the following command in Windows PowerShell as an administrator:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Force -Scope process
- 导航至 \bin 文件夹,以管理员身份运行 Create-selfsignedcertificate.ps1 脚本。
- 运行脚本时,系统会要求您为证书添加通用名称、证书有效期的起止日期(yyyy-MM-dd)以及用于保护证书的私钥。
- 输入值后,脚本将在 bin 文件夹中创建一个包含公钥和私钥的 .pfx 文件。
- .pfx 文件需上传至 ADManager Plus,而 .cer 文件应上传至 Microsoft Entra ID 应用程序的 概览 页面。
角色和权限
在 ADManager Plus 中配置的服务帐户所需的角色和权限(最小范围)如下所示。
| 模块 |
角色名称 |
范围 |
| 管理 |
特权身份验证管理员 |
修改 Microsoft 365 用户的 MFA 设置。 |
| 报告 |
全局读取者 |
获取 Microsoft 365 用户的 MFA 设置详情。 |
在 ADManager Plus 中配置的 Microsoft Entra 应用程序所需的角色如下所示。
| 角色名称 |
范围 |
| 特权身份验证管理员 |
创建、管理和删除用户及其身份验证方法。 |
| 帮助台管理员 |
更改密码、使刷新令牌失效并监控服务健康状况 |
| Exchange 管理员 |
创建、管理和删除 Exchange Online 邮箱。 |
在 ADManager Plus 中配置的 Microsoft Entra 应用程序所需的权限如下所示。
| 模块 |
API 名称 |
权限 |
范围 |
| 管理 |
Microsoft Graph |
User.ReadWrite.All |
用户的创建、修改、删除和恢复。 |
| Group.ReadWrite.All Calendars.ReadWrite |
组的创建、修改、删除和恢复;添加或移除成员和所有者 |
| AdminsitrativeUnit.ReadWrite.All |
向管理单元添加成员 |
| RoleManagement.ReadWrite.Directory |
向用户添加目录角色 |
| ChannelMember.ReadWrite.All |
添加和移除所有频道的成员 |
| UserAuthenticationMethod.ReadWrite.All |
读取和写入所有用户的身份验证方法 |
| ProfilePhoto.ReadWrite.All |
读取和写入用户或组的头像 |
| Policy.ReadWrite.AuthenticationMethod |
读取和写入所有身份验证方法策略 |
| Policy.Read.All |
读取所有条件访问策略 |
| Policy.ReadWrite.ConditionalAccess |
读取和修改所有条件访问策略 |
| Exchange Online |
Exchange.ManageAsApp |
通过配置的 Entra 应用程序执行 Exchange Online PowerShell cmdlet |
| 报告 |
Microsoft Graph |
User.Read.All |
用户和组成员报告 |
| Group.Read.All |
组报告 |
| Contacts.Read |
联系人报告 |
| Files.Read.All |
获取 OneDrive for business 报告 |
| Reports.Read.All |
使用情况报告 |
| Organization.Read.All |
许可证详细报告 |
| ChannelMember.Read.All |
获取 Microsoft Teams 频道成员报告。 |
| Application.Read.All |
获取 Entra 应用程序详细信息。 |
| Policy.Read.All |
配置条件访问策略详细信息。 |
| ReportSettings.Read.All |
使配置的 Entra 应用程序能够从其配置的租户中检索租户级设置。 |
| Exchange Online |
Exchange.ManageAsApp |
通过配置的 Entra 应用程序执行 Exchange Online PowerShell cmdlet |
ADManager Plus 门户
- 从下面的弹出窗口打开 ADManager Plus 门户。

- 输入您的 租户名称。例如,test.onmicrosoft.com
- 将之前在步骤 26 中 创建 Entra ID 应用程序的步骤 部分保存的 应用程序(客户端)ID 和 对象 ID 粘贴到各自字段中。
- 输入之前在步骤 22 中 创建 Entra ID 应用程序的步骤 部分保存的 应用程序密钥值。上传 应用程序证书 并提供 证书密码。
- 点击 添加租户。租户将被添加到 ADManager Plus 中。如果您希望修改其中的详细信息,配置列出后点击 编辑 选项并进行更改。

- 完成必要修改后点击 更新。现在应已为配置的帐户启用 REST API 访问。