使用 HTTP 操作收集审核日志

连接到 Office 365 管理活动 API 参考 的审核日志同步流用于收集遥测数据,例如应用程序的唯一用户和启动。 流使用 HTTP 操作访问 API。 在本文中,您将为 HTTP 操作设置应用程序注册以及运行流所需的环境变量。

备注

卓越中心 (CoE) 初学者工具包在没有这些流的情况下工作,但控制面板中的 Power BI 使用信息(如应用程序启动和唯一用户)为空。

先决条件

  1. 完成设置 CoE 初学者工具包 之前和 设置库存组件 文章。
  2. 设置您的环境
  3. 使用 正确的身份登录。

小费

仅当您选择 云端流 作为清单和遥测机制时,才设置审核日志流。

设置审核日志流之前

  1. 要使审核日志连接器正常工作,必须打开 Microsoft 365 审核日志搜索。 有关更多信息,请参阅 打开或关闭审核日志搜索。
  2. 您的租户必须具有支持统一审核日志记录的订阅。 有关详细信息,请参阅 商业和企业计划的安全与合规中心可用性。
  3. 需要全局管理员来配置 Microsoft Entra 应用注册。

备注

Office 365 管理 API 使用 Microsoft Entra ID 提供身份验证服务,您可以使用这些服务为应用程序授予访问权限。

为 Office 365 管理 API 创建 Microsoft Entra 应用注册

使用这些步骤,您可以为 Microsoft Entra 流中的 HTTP 调用设置 Power Automate 应用注册,用于连接到审核日志。 有关更多信息,请参阅 开始使用 Office 365 管理 API

  1. 登录到 Azure 门户

  2. 转至 Microsoft Entra ID>应用注册 显示应用注册 Azure 服务位置的屏幕截图。

  3. 选择 + 新建注册

  4. 输入名称,例如 Microsoft 365 Management(管理),但不要更改任何其他设置,然后选择 Register(注册)。

  5. 选择 API 权限>+ 添加权限 屏幕截图显示了 API 权限菜单的 +Add a permission 按钮的位置。

  6. 选择 Office 365 管理 API,按如下方式配置权限:

    1. 选择应用程序权限,然后选择 ActivityFeed.Read 显示 API 权限菜单的 Request API permissions (请求 API 权限) 页面上的 ActivityFeed.Read 设置的屏幕截图。

    2. 选择添加权限

  7. 选择为(您的组织)授予管理员同意书。 若要设置管理员内容,请参阅 向应用程序授予租户范围的管理员同意。

    API 权限现在反映了状态为已为(您的组织)授予的已委派 ActivityFeed.Read

  8. 选择证书和密码

  9. 选择 + 新客户端密码

  10. 根据您组织的政策添加描述和到期日期,然后选择添加

  11. 将应用程序(客户端)ID 复制并粘贴到文本文档(如记事本)中。

  12. 选择概述,并将应用程序(客户端)ID 和目录(租户)ID 值复制并粘贴到同一文本文档。 请务必记下哪个 GUID 对应哪个值。 在配置自定义连接器时,您需要这些值。

更新环境变量

环境变量用于存储应用程序注册的客户端 ID 和密钥。 变量还用于存储访问群体和授权服务终端节点,具体取决于 HTTP 操作的云(商业、GCC、 GCC HighDoD)。 在打开流之前更新环境变量

您可以将客户端密钥以纯文本形式存储在 Audit Logs - Client Secret (审核日志 - 客户端密钥 ) 环境变量中 ,不建议这样做。 相反,我们建议您在 Azure Key Vault 中创建和存储客户端密码,并在审核日志 - 客户端 Azure 密钥 环境变量中 引用它。

备注

为使用此环境变量的流配置了一个条件,以获取审核日志 - 客户端密码审核日志 - 客户端 Azure 密码环境变量。 但是,您无需编辑流即可使用 Azure Key Vault。

客户 Description
审核日志 - 访问群体 HTTP 调用的访问群体参数 商业 (默认): https://manage.office.com

海湾合作委员会: https://manage-gcc.office.com

GCC High: https://manage.office365.us

国防部: https://manage.protection.apps.mil
审核日志 - 授权 HTTP 调用中的 authority 字段 商业 (默认): https://login.windows.net

海湾合作委员会: https://login.windows.net

GCC High: https://login.microsoftonline.us

国防部: https://login.microsoftonline.us
审核日志 - ClientID 应用注册 Client ID 应用程序客户端 ID 来自 为管理 API Microsoft Entra 创建 Office 365 应用程序注册 步骤。
审核日志 - 客户端密码 纯文本形式的应用程序注册客户端密钥(不是密钥 ID,而是实际值) 应用程序客户端密钥来自 为管理 API Microsoft Entra 创建 Office 365 应用程序注册 步骤。 如果您使用 Azure Key Vault 存储客户端 ID 和密码,请留空。
审核日志 - 客户端 Azure 密码 应用注册客户端密码的 Azure Key Vault 参考 应用程序客户端密码的 Azure Key Vault 参考来自 为管理 API Microsoft Entra 创建 Office 365 应用程序注册 步骤。 如果您要将客户端 ID 以纯文本形式存储在审核日志 - 客户端密码环境变量中,请留空。 此变量需要 Azure Key Vault 引用,而不是机密。 有关详细信息,请参阅 在环境变量中使用 Azure Key Vault 机密

开启订阅审核日志内容

  1. 转到 make.powerapps.com
  2. 选择解决方案
  3. 打开卓越中心 - 核心组件解决方案。
  4. 打开 Admin |审计日志 | Office 365 管理 API 订阅 流程并运行它,输入 start 作为要运行的操作。 显示导航栏中 Run(运行)按钮的位置以及 Run flow(运行流程)窗格中的启动操作的屏幕截图。
  5. 打开流并验证启动订阅的操作是否已传递。

重要提示

如果您之前启用了订阅,则会看到 a(400)The subscription is already enabled 消息。 这意味着订阅过去已成功启用。 您可以忽略此消息并继续设置。 如果您没有看到上述消息或(200)回复,则请求可能失败。 您的设置可能存在错误,导致 Flow 无法正常工作。 要检查的常见问题包括:

  • 审核日志是否已启用,您是否有权查看审核日志? 通过在 Microsoft 合规性管理器 搜索来测试是否启用了日志。
  • 您最近是否启用了审核日志? 如果已启用,请在几分钟后重试,以使审核日志有时间激活。
  • 验证您是否正确执行了 Microsoft Entra 应用注册中的步骤。
  • 验证您是否正确更新了这些流的环境变量。

打开流

  1. 转到 make.powerapps.com
  2. 选择解决方案
  3. 打开卓越中心 - 核心组件解决方案。
  4. 打开 Admin |审计日志 |更新数据(V2)流程。 此流程使用上次启动信息更新 PowerApps 表,并将元数据添加到审核日志记录中。
  5. 打开 Admin |审计日志 |同步审核日志(V2)流。 此流按小时计划运行,并将审核日志事件收集到审核日志表中。

如何获取旧数据

此解决方案在配置后收集应用程序启动,但未设置为收集历史应用程序启动。 Microsoft 365 根据您的许可证,使用 Microsoft Purview 中的审核日志,历史数据最多可使用一年。

您可以使用解决方案中的一个流手动将历史数据加载到 CoE 初学者工具包表中。

备注

检索审核日志的用户需要访问它们的权限。 有关更多信息,请参阅 搜索审核日志之前。

  1. 浏览到审核日志搜索

  2. 在可供您使用的日期范围内搜索启动应用活动。 突出显示日期范围和启动的应用活动的屏幕截图,以便在 Microsoft Purview 的“审核”页中进行搜索。

  3. 搜索运行后,选择 Export(导出 )以下载结果。

  4. 在核心解决方案中浏览到此流程: Admin |审计日志 |从导出的审核日志 CSV 文件加载事件。

  5. 打开流程并运行它,为 Audit Log CSV(审核日志 CSV)参数选择下载的文件。 显示 Run flow(运行流程)窗格的 Audit Log CSV import field(审核日志 CSV 导入)字段和 Run flow(运行流程)按钮的屏幕截图。

    备注

    如果在选择 Import(导入)后未看到文件加载,则它可能超过了此扳机键允许的内容大小。 请尝试将文件分解为更小的文件(每个文件 50,000 行),在每个文件中运行一次流。 流可以为多个文件同时运行。

  6. 完成后,这些日志将包含在遥测中。 如果找到最近的启动项,则会更新应用程序的上次启动 列表。

故障排除

API 权限

转到您的应用程序注册并验证您是否具有正确的 API 权限。 您的应用程序注册需要应用程序权限,而不是委派。 验证状态是否为 Granted(已授予)。

机密环境变量 - Azure 机密

如果使用 Azure Key 值来存储应用程序注册机密,请验证 Azure Key Vault 权限是否正确。 用户需要具有 Key Vault 机密用户 角色才能读取,需要具有 Key Vault 参与者 角色才能更新。 显示 Key Vault 参与者和 Key Vault 机密用户角色的屏幕截图。

如果您在使用 Azure Key Vault 时遇到有关防火墙、环境静态 Dataverse IP 或其他此类功能问题的其他问题,请联系产品支持部门来解决这些问题。

机密环境变量 - 纯文本

如果您使用纯文本来存储应用程序注册密钥,请验证您输入的是密钥值本身,而不是密钥 ID。 Secret 值是一个较长的字符串,其字符集比 GUID 大,例如,字符串可能包含波形符。

我发现 CoE Starter Kit 存在一个错误。 我应该去哪里解决?

若要针对解决方案报告错误,请转到 aka.ms/coe-starter-kit-issues