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

编辑

控制是否将原始 o365 审计对象保留在 event.original 中。默认值为 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 子字典下。如果自定义字段名称与 Filebeat 添加的其他字段名称冲突,则自定义字段将覆盖其他字段。

processors
编辑

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

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

pipeline
编辑

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

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

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