Office 365 管理活动 API 输入

编辑

Office 365 管理活动 API 输入

编辑

[8.14.0] 在 8.14.0 版本中已弃用。

o365audit 输入已弃用。要收集 Microsoft Office 365 日志数据,请使用 Microsoft 365 集成包。对于更复杂或特定于用户的用例,可以使用 CEL 输入 实现类似的功能。

此功能处于测试阶段,可能会发生变化。其设计和代码不如正式 GA 功能成熟,按现状提供,不提供任何担保。测试版功能不受正式 GA 功能的支持 SLA 的约束。

使用 o365audit 输入检索来自 Office 365 和 Azure AD 活动日志的审核消息。这些日志与“安全和合规中心”中“审核日志搜索”下提供的日志相同。

只要配置单个应用程序即可访问所有租户,则可以使用单个输入实例来获取多个租户的事件。在此方案中,建议使用基于证书的身份验证。

此输入不会对传入消息执行任何转换,尤其不会填充 Elastic 通用模式字段,并且某些数据编码为对象数组,难以在 Elasticsearch 中查询。您可能需要改用 Office 365 模块

示例配置

filebeat.inputs:
- type: o365audit
  application_id: my-application-id
  tenant_id: my-tenant-id
  client_secret: my-client-secret

也支持多租户和基于证书的身份验证

filebeat.inputs:
- type: o365audit
  application_id: my-application-id
  tenant_id:
    - tenant-id-A
    - tenant-id-B
    - tenant-id-C
  certificate: /path/to/cert.pem
  key: /path/to/private.pem
  # key_passphrase: "my key's password"

配置选项

编辑

o365audit 输入支持以下配置选项以及稍后描述的 常用选项

application_id
编辑

用于身份验证的 Azure 应用程序的应用程序 ID(也称为客户端 ID)。

tenant_id
编辑

要从中提取数据的租户 ID(也称为目录 ID)。也可以指定租户 ID 列表,以从多个租户提取数据。

content_type
编辑

要提取的内容类型列表。默认情况下,将提取所有已知内容类型。

  • Audit.AzureActiveDirectory
  • Audit.Exchange
  • Audit.SharePoint
  • Audit.General
  • DLP.All
client_secret
编辑

用于身份验证的客户端密钥。

certificate
编辑

用于基于证书的身份验证的公共证书文件路径。

用于基于证书的身份验证的证书的私钥文件路径。

key_passphrase
编辑

用于解密私钥的密码。

api.authentication_endpoint
编辑

用于授权 Azure 应用的身份验证端点。默认为 https://login.microsoftonline.com/,可以更改为访问替代端点。

api.resource

编辑

要从中检索信息的 API 资源。默认为 https://manage.office.com,可以更改为访问替代端点。

api.max_retention

编辑

支持的最大数据保留期限。默认为 168h。Filebeat 首次运行时将为租户提取所有保留的数据。

api.poll_interval

编辑

在轮询 API 服务器以获取新事件之前等待的时间间隔。默认为 3m

api.max_requests_per_minute

编辑

每个租户每分钟执行的最大请求数。默认为 2000,因为这是每个租户的服务器端限制。

api.max_query_size

编辑

API 在单个查询中允许的最大时间窗口。默认为 24h,以匹配 Microsoft 的文档限制。

api.preserve_original_event

编辑

控制是否在 event.original 中保留原始 o365 审核对象。默认为 false

常用选项

编辑

所有输入都支持以下配置选项。

enabled
编辑

使用 enabled 选项启用和禁用输入。默认情况下,enabled 设置为 true。

tags
编辑

Filebeat 包含在每个已发布事件的 tags 字段中的标签列表。标签使您可以轻松地在 Kibana 中选择特定事件或在 Logstash 中应用条件筛选。这些标签将附加到在常规配置中指定的标签列表中。

示例

filebeat.inputs:
- type: o365audit
  . . .
  tags: ["json"]
fields
编辑

您可以指定的可选字段,以向输出添加其他信息。例如,您可以添加可用于筛选日志数据的字段。字段可以是标量值、数组、字典或这些的任何嵌套组合。默认情况下,此处指定的字段将分组在输出文档中的 fields 子字典下。要将自定义字段存储为顶级字段,请将 fields_under_root 选项设置为 true。如果在常规配置中声明了重复字段,则其值将被此处声明的值覆盖。

filebeat.inputs:
- type: o365audit
  . . .
  fields:
    app_id: query_engine_12
fields_under_root
编辑

如果将此选项设置为 true,则自定义 fields 将存储为输出文档中的顶级字段,而不是分组在 fields 子字典下。如果自定义字段名称与 Filebeat 添加的其他字段名称冲突,则自定义字段将覆盖其他字段。

processors
编辑

要应用于输入数据的处理器列表。

有关在配置中指定处理器的信息,请参阅 处理器

pipeline
编辑

为此输入生成的事件设置的摄取管道 ID。

也可以在 Elasticsearch 输出中配置管道 ID,但这通常会导致配置文件更简单。如果在输入和输出中都配置了管道,则使用输入中的选项。

keep_null
编辑

如果将此选项设置为 true,则将在输出文档中发布值为 null 的字段。默认情况下,keep_null 设置为 false

index
编辑

如果存在,此格式化字符串将覆盖此输入的事件索引(对于 elasticsearch 输出),或设置事件元数据的 raw_index 字段(对于其他输出)。此字符串只能引用代理名称和版本以及事件时间戳;要访问动态字段,请使用 output.elasticsearch.index 或处理器。

示例值:"%{[agent.name]}-myindex-%{+yyyy.MM.dd}" 可能扩展为 "filebeat-myindex-2019.11.01"

publisher_pipeline.disable_host
编辑

默认情况下,所有事件都包含 host.name。可以将此选项设置为 true 以禁用将此字段添加到所有事件。默认值为 false