收集 GitHub 审核日志
概览
此解析器可处理 JSON 格式的 GitHub 审核日志。它会移除众多字段来清理输入,根据 process_type 字段执行多项 grok 和键值操作以提取相关信息,将提取的字段映射到 UDM,并为 Google SecOps 提取设置输出结构。它还可处理特定的边缘情况,并针对 GitHub 审核日志中的不同日志子类型执行数据转换。
准备工作
确保您满足以下前提条件:
- Google SecOps 实例。
- 对 GitHub 代码库的特权访问权限。
设置 Feed
您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:
- SIEM 设置 > Feed
- 内容中心 > 内容包
通过“SIEM 设置”>“Feed”设置 Feed
如需配置 Feed,请按以下步骤操作:
- 依次前往 SIEM 设置 > Feed。
- 点击添加新 Feed。
- 在下一页上,点击配置单个 Feed。
- 在 Feed 名称字段中,输入 Feed 的名称(例如 GitHub 日志)。
- 选择 Webhook 作为来源类型。
- 选择 GitHub 作为日志类型。
- 点击下一步。
- 可选:为以下输入参数指定值:
- 拆分分隔符:用于分隔日志行的分隔符,例如
\n
。
- 拆分分隔符:用于分隔日志行的分隔符,例如
- 点击下一步。
- 在最终确定界面中检查 Feed 配置,然后点击提交。
- 点击生成密钥,生成用于对此 Feed 进行身份验证的密钥。
- 复制并存储密钥。您将无法再次查看此密钥。如有需要,您可以重新生成新的 Secret 密钥,但此操作会使之前的 Secret 密钥失效。
- 在详情标签页中,从端点信息字段复制 Feed 端点网址。您需要在客户端应用中指定此端点网址。
- 点击完成。
设置来自内容中心的 Feed
为以下字段指定值:
- 拆分分隔符:用于分隔日志行的分隔符,例如
\n
。
高级选项
- Feed 名称:用于标识 Feed 的预填充值。
- 来源类型:用于将日志收集到 Google SecOps 中的方法。
- 资源命名空间:与 Feed 关联的命名空间。
提取标签:应用于相应 Feed 中所有事件的标签。
点击生成密钥,生成用于对此 Feed 进行身份验证的密钥。
复制并存储密钥。您将无法再次查看此密钥。如有需要,您可以重新生成新的 Secret 密钥,但此操作会使之前的 Secret 密钥失效。
在详情标签页中,从端点信息字段复制 Feed 端点网址。您需要在客户端应用中指定此端点网址。
为 Webhook Feed 创建 API 密钥
前往 Google Cloud 控制台 > 凭据。
点击创建凭据,然后选择 API 密钥。
将 API 密钥访问权限限制为 Google Security Operations API。
指定端点网址
- 在客户端应用中,指定 webhook Feed 中提供的 HTTPS 端点网址。
通过在自定义标头中指定 API 密钥和密钥来启用身份验证,格式如下:
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
建议:将 API 密钥指定为标头,而不是在网址中指定。如果您的 Webhook 客户端不支持自定义标头,您可以使用以下格式的查询参数指定 API 密钥和密钥:
ENDPOINT_URL?key=API_KEY&secret=SECRET
替换以下内容:
ENDPOINT_URL
:Feed 端点网址。API_KEY
:用于向 Google Security Operations 进行身份验证的 API 密钥。SECRET
:您生成的用于验证 Feed 的密钥。
在 GitHub 上创建 Webhook
本指南分步介绍了如何在 GitHub 上创建 Webhook 以将数据发送到 Google SecOps。
- 前往您的 GitHub 代码库。
- 转到设置。
- 点击网络钩子。
- 点击 Add webhook。
- 在载荷网址字段中,输入 Google SecOps API 端点网址。
选择 application/json 作为内容类型。
可选:为增强安全性,请设置 Secret。这会为 Webhook 载荷生成签名,以便您在 Google SecOps 端验证其真实性。如果您使用密文,请在 Google SecOps Feed 中也配置该密文。
选择触发 Webhook 的事件。如需进行全面的日志记录,请选择让我选择各个事件,然后选中相关事件(例如 Push、Pull Request、Issue)。如果您不确定,请先选择仅限
push
事件。确保选中有效复选框。
点击添加 Webhook 以保存您的配置。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
_document_id |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
原始日志中的 _document_id 会映射到 UDM 内 additional.fields 数组中的键值对。 |
action |
read_only_udm.metadata.product_event_type ,read_only_udm.security_result.summary |
action 字段在元数据中映射到 product_event_type ,在 security_result 中映射到 summary 。 |
actor |
read_only_udm.principal.user.userid |
表示执行操作的用户的 actor 字段映射到 principal.user.userid 。 |
actor_id |
read_only_udm.principal.user.attribute.labels.[].key ,read_only_udm.principal.user.attribute.labels.[].value |
actor_id 会映射为 principal.user.attribute.labels 数组中的标签。 |
actor_ip |
read_only_udm.principal.ip |
执行者的 IP 地址会映射到 principal.ip 。 |
actor_location.country_code |
read_only_udm.principal.location.country_or_region |
将演员的国家/地区代码映射到 principal.location.country_or_region 。 |
application_name |
read_only_udm.target.application |
应用名称映射到 target.application 。 |
business |
read_only_udm.target.user.company_name 、read_only_udm.additional.fields.[].key 、read_only_udm.additional.fields.[].value.string_value |
商家名称会映射到 target.user.company_name ,并作为键值对包含在 additional.fields 中。 |
business_id |
read_only_udm.target.resource.attribute.labels.[].key ,read_only_udm.target.resource.attribute.labels.[].value |
商家 ID 会映射为 target.resource.attribute.labels 数组中的标签。 |
config.url |
read_only_udm.target.url |
配置网址映射到 target.url 。 |
created_at |
read_only_udm.metadata.event_timestamp |
created_at 时间戳会转换为适当的格式并映射到 metadata.event_timestamp 。 |
data.cancelled_at |
read_only_udm.extensions.vulns.vulnerabilities.scan_end_time |
data.cancelled_at 时间戳会经过转换并映射到 extensions.vulns.vulnerabilities.scan_end_time 。 |
data.email |
read_only_udm.target.email |
数据字段中的电子邮件地址会映射到 target.email 。 |
data.event |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的事件会映射为 security_result.about.labels 数组中的标签。 |
data.events |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的事件会映射为 security_result.about.labels 数组中的标签。 |
data.head_branch |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的头部分支映射为 security_result.about.labels 数组中的标签。 |
data.head_sha |
read_only_udm.target.file.sha256 |
数据字段中的头 SHA 会映射到 target.file.sha256 。 |
data.hook_id |
read_only_udm.target.resource.attribute.labels.[].key ,read_only_udm.target.resource.attribute.labels.[].value |
数据字段中的钩子 ID 会映射为 target.resource.attribute.labels 数组中的标签。 |
data.started_at |
read_only_udm.extensions.vulns.vulnerabilities.scan_start_time |
data.started_at 时间戳会经过转换并映射到 extensions.vulns.vulnerabilities.scan_start_time 。 |
data.team |
read_only_udm.target.user.group_identifiers |
数据字段中的球队会映射到 target.user.group_identifiers 。 |
data.trigger_id |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的触发器 ID 会映射为 security_result.about.labels 数组中的标签。 |
data.workflow_id |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的工作流 ID 会映射为 security_result.about.labels 数组中的标签。 |
data.workflow_run_id |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
数据字段中的工作流运行 ID 会映射为 security_result.about.labels 数组中的标签。 |
enterprise.name |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
企业名称以键值对的形式映射到 additional.fields 中。 |
external_identity_nameid |
read_only_udm.target.user.userid ,read_only_udm.target.user.email_addresses |
如果 external_identity_nameid 是电子邮件地址,则提取用户名部分并将其映射到 target.user.userid ,然后将完整电子邮件地址添加到 target.user.email_addresses 。否则,整个值都会映射到 target.user.userid 。 |
external_identity_username |
read_only_udm.target.user.user_display_name |
外部身份用户名映射到 target.user.user_display_name 。 |
hashed_token |
read_only_udm.network.session_id |
哈希处理后的令牌会映射到 network.session_id 。 |
org |
read_only_udm.target.administrative_domain |
组织已映射到 target.administrative_domain 。 |
org_id |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
组织 ID 以键值对的形式映射到 additional.fields 中。 |
programmatic_access_type |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
程序化访问类型在 additional.fields 中映射为键值对。 |
public_repo |
read_only_udm.additional.fields.[].key 、read_only_udm.additional.fields.[].value.string_value 、read_only_udm.target.location.name |
public_repo 值决定了 additional.fields 和 target.location.name 中映射到键值对的值。“false”映射到“PRIVATE”,其他值映射到“PUBLIC”。 |
query_string |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
查询字符串在 additional.fields 中映射为键值对。 |
rate_limit_remaining |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
剩余的速率限制以键值对的形式映射在 additional.fields 中。 |
repo |
read_only_udm.target.resource.name |
代码库映射到 target.resource.name 。 |
repo_id |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
存储库 ID 以键值对的形式映射到 additional.fields 中。 |
repository_public |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
代码库公开标志在 additional.fields 中映射为键值对。 |
request_body |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
请求正文以键值对的形式映射到 additional.fields 中。 |
request_method |
read_only_udm.network.http.method |
请求方法会转换为大写形式,并映射到 network.http.method 。 |
route |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
相应路线以键值对的形式映射到 additional.fields 中。 |
status_code |
read_only_udm.network.http.response_code |
状态代码会转换为整数并映射到 network.http.response_code 。 |
token_id |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
令牌 ID 以键值对的形式映射到 additional.fields 中。 |
token_scopes |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
令牌范围以键值对的形式映射到 additional.fields 中。 |
transport_protocol_name |
read_only_udm.network.application_protocol |
传输协议名称转换为大写,并映射到 network.application_protocol 。 |
url_path |
read_only_udm.target.url |
网址路径映射到 target.url 。 |
user |
read_only_udm.target.user.user_display_name |
用户已映射到 target.user.user_display_name 。 |
user_agent |
read_only_udm.network.http.user_agent ,read_only_udm.network.http.parsed_user_agent |
用户代理映射到 network.http.user_agent ,其解析版本映射到 network.http.parsed_user_agent 。 |
user_id |
read_only_udm.target.user.userid |
用户 ID 会映射到 target.user.userid 。 |
workflow.name |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
工作流名称映射为 security_result.about.labels 数组中的标签。 |
workflow_run.event |
read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
工作流运行事件在 additional.fields 中映射为键值对。 |
workflow_run.head_branch |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
工作流运行头分支映射为 security_result.about.labels 数组中的标签。 |
workflow_run.head_sha |
read_only_udm.target.file.sha256 |
工作流程运行头 SHA 会映射到 target.file.sha256 。 |
workflow_run.id |
read_only_udm.target.resource.attribute.labels.[].key ,read_only_udm.target.resource.attribute.labels.[].value |
工作流运行 ID 会映射为 target.resource.attribute.labels 数组中的标签。 |
workflow_run.workflow_id |
read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
工作流运行工作流 ID 会映射为 security_result.about.labels 数组中的标签。 |
(解析器逻辑) | read_only_udm.metadata.event_type |
解析器会根据其他字段(例如 data.team 、action 和 actor )的存在情况和值来确定事件类型。如果未满足其他任何特定条件,则默认为 USER_RESOURCE_ACCESS 。 |
(解析器逻辑) | read_only_udm.metadata.log_type |
日志类型硬编码为“GITHUB”。 |
(解析器逻辑) | read_only_udm.metadata.product_name |
产品名称硬编码为“GITHUB”。 |
(解析器逻辑) | read_only_udm.metadata.vendor_name |
供应商名称已硬编码为“GITHUB”。 |
(解析器逻辑) | read_only_udm.target.resource.resource_type |
如果存在 repo 字段,资源类型将设置为 STORAGE_OBJECT 。 |
(解析器逻辑) | read_only_udm.target.resource.type |
资源类型派生自 action 字段。 |
(解析器逻辑) | read_only_udm.security_result.action |
安全操作(允许/阻止)取决于 at 或 raw.at 字段是否存在以及是否等于“success”。 |
(解析器逻辑) | read_only_udm.security_result.severity |
如果存在,安全严重程度会从 level 或 SeverityText 字段派生出来。“INFO”映射到“INFORMATIONAL”,“WARN”映射到“MEDIUM”,其他值直接映射。对于 git-daemon 日志,“fatal”会映射到“CRITICAL”。 |
(解析器逻辑) | read_only_udm.network.application_protocol |
应用协议派生自 protocol 、proto 、babeld_proto 、transport_protocol_name 或 raw.protocol 字段,转换为大写并检查是否为“HTTP”“HTTPS”和“SSH”。 |
(解析器逻辑) | read_only_udm.network.application_protocol_version |
应用协议版本来源于 http_version 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.network.http.parsed_user_agent |
解析后的用户代理派生自 user_agent 、column5 、http_ua 或 content 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.network.received_bytes |
接收的字节数派生自 column3 、read_bytes 、fs_recv 或 uploaded_bytes 字段(如果存在),并转换为无符号整数。 |
(解析器逻辑) | read_only_udm.network.received_packets |
接收的数据包数(如果存在)派生自 client_recv 字段,并转换为整数。 |
(解析器逻辑) | read_only_udm.network.response_code |
如果存在 column2 、status 、status_code 或 http_status 字段,则响应代码会从这些字段派生出来,并转换为整数。 |
(解析器逻辑) | read_only_udm.network.sent_bytes |
发送的字节数派生自 client_sent 字段(如果存在),并转换为无符号整数。 |
(解析器逻辑) | read_only_udm.network.sent_packets |
发送的数据包数(如果存在)从 fs_sent 字段派生,并转换为整数。 |
(解析器逻辑) | read_only_udm.network.session_duration.seconds |
会话时长(以秒为单位)是从 time_duration 字段(如果存在)派生出来的,并转换为整数。 |
(解析器逻辑) | read_only_udm.target.file.full_path |
目标文件的完整路径派生自 path 、git_dir 或 dir 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.file.sha1 |
目标文件 SHA1 会从 sha 字段(如果存在)中派生出来。 |
(解析器逻辑) | read_only_udm.target.hostname |
目标主机名源自 client_hostname 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.ip |
目标 IP 派生自 x_real_ip 、remote_address 、client_ip 或 remote_addr 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.location.name |
目标位置名称派生自 datacenter 或 public_repo 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.port |
目标端口派生自 client_port 、dstp 或 remote_port 字段(如果存在),并转换为整数。 |
(解析器逻辑) | read_only_udm.target.process.command_line |
目标进程命令行派生自 command 、ssh_cmd 、cmdline 或 cmd 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.process.parent_process.pid |
目标进程的父进程 ID 派生自 ppid 字段(如果存在),并转换为字符串。 |
(解析器逻辑) | read_only_udm.target.process.pid |
目标进程 ID 派生自 pid 字段(如果存在),并转换为字符串。 |
(解析器逻辑) | read_only_udm.target.url |
目标网址派生自 url 、http_url 、request_url 、http_request 、dest_url 、config.url 或 url_path 字段(如果存在)。它也可以从 path_info 和 query_string 构建。 |
(解析器逻辑) | read_only_udm.target.user.attribute.roles.[].name |
目标用户角色派生自 actor_type 或 user_type 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.user.email_addresses |
如果 external_identity_nameid 字段是电子邮件地址,则目标用户电子邮件地址会派生自该字段。 |
(解析器逻辑) | read_only_udm.target.user.group_identifiers |
目标用户群组标识符派生自 data.team 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.user.userid |
目标用户 ID 派生自 userid 、external_identity_nameid 、current_user 、member 、user_id 、actor_id 或 raw.user_id 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.target.user.user_display_name |
目标用户显示名称派生自 login 、user 、external_identity_username 、user_login 或 raw.login 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.principal.asset.asset_id |
主要资源 ID 派生自 guid 字段,并以“GUID: ”为前缀。 |
(解析器逻辑) | read_only_udm.principal.hostname |
如果存在 hostname 、request_host 、host 或 principal_hostname 字段,则主要主机名会从这些字段中派生出来。 |
(解析器逻辑) | read_only_udm.principal.ip |
如果存在 column6 、ip 、x_real_ip 、remote_address 、raw.ip 、actor_ip 或 log:source:ip 字段,则主要 IP 会从这些字段中派生出来。 |
(解析器逻辑) | read_only_udm.principal.location.country_or_region |
主要位置国家/区域来源于 actor_location.country_code 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.principal.port |
如果存在,主端口会从 srcp 或 log:source:port 字段派生,并转换为整数。 |
(解析器逻辑) | read_only_udm.principal.resource.name |
如果存在,则从 service.name 字段派生出主账号资源名称。 |
(解析器逻辑) | read_only_udm.principal.resource.product_object_id |
如果存在,则从 service.instance.id 或 subject_id 字段派生出主资源商品对象 ID。 |
(解析器逻辑) | read_only_udm.principal.url |
如果存在,则主网址派生自 repo 字段。 |
(解析器逻辑) | read_only_udm.principal.user.userid |
如果存在,则从 repository_owner_id 字段派生出主用户 ID,并将其转换为字符串。 |
(解析器逻辑) | read_only_udm.principal.user.user_display_name |
如果存在,则主要用户显示名称派生自 repo_name 字段。 |
(解析器逻辑) | read_only_udm.intermediary.hostname |
中间主机名源自 hostname 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.intermediary.ip |
中介 IP 来源于 x_forwarded_for 或 xff_ip 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.metadata.description |
元数据说明派生自 content 、at 或 raw.message 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.metadata.product_event_type |
商品事件类型来源于 process_type 或 action 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.metadata.product_log_id |
商品日志 ID 派生自 github_request_id 、id 、request_id 或 raw.request_id 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.metadata.product_version |
如果存在,产品版本将派生自 version 字段。 |
(解析器逻辑) | read_only_udm.security_result.about.labels.[].key ,read_only_udm.security_result.about.labels.[].value |
系统会根据 data.events 、data.workflow_id 、workflow.name 、data.head_branch 、data.trigger_id 、data.workflow_run_id 和 data.event 等字段的存在情况和值,向 security_result.about.labels 数组添加各种标签。 |
(解析器逻辑) | read_only_udm.security_result.description |
安全结果说明源自 auth_status 、data_msg 、msg 、Body 、desc 或 content 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.security_result.severity_details |
安全结果严重程度详细信息源自 userid 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.security_result.summary |
安全结果摘要来源于 creason 、action 或 reason 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.network.http.referral_url |
HTTP 引荐来源网址派生自 column4 或 referer 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.network.http.user_agent |
HTTP 用户代理派生自 column5 、http_ua 或 user_agent 字段(如果存在)。 |
(解析器逻辑) | read_only_udm.network.sent_bytes |
网络发送的字节数派生自 client_sent 或 fs_sent 字段(如果存在),并转换为无符号整数。 |
(解析器逻辑) | read_only_udm.additional.fields.[].key ,read_only_udm.additional.fields.[].value.string_value |
许多字段会以键值对的形式有条件地映射到 additional.fields 数组中,包括 auth_fingerprint 、controller 、oauth_access_id 、oauth_application_id 、oauth_scopes 、route 、worker_request_count 、repo 、repo_visibility 、auth 、content_length 、elapsed 、catalog_service 、action 、method 、failure_type 、failure_reason 、hashed_token 、token_type 、gitauth_version 、enterprise.name 、programmatic_access_type 、token_id 、token_scopes 、integration 、query_string 、rate_limit_remaining 、request_body 、org_id 、repo_id 、repository_public 、raw.method 、raw.failure_type 、raw.failure_reason 、raw.from 、raw.raw_login 、device_cookie 、operation 、operation_type 、category_type 、business 、note 、read 、pre_perform_allocation_count 、backend 、queue 、class 、success 、env 、job_id 和 job 。每个字段的具体逻辑在解析器代码中详细说明。 |
(解析器逻辑) | read_only_udm.security_result.detection_fields.[].key ,read_only_udm.security_result.detection_fields.[].value |
字段 controller_action 、two_factor 、delay_time 、queued_time 、delivery_build 、delivery_send 和 stages 会有条件地映射到 security_result.detection_fields 数组。 |
(解析器逻辑) | read_only_udm.target.resource.attribute.labels.[].key ,read_only_udm.target.resource.attribute.labels.[].value |
字段 hook_id 、job_name 、job_workflow_ref 、runner_group_id 、runner_group_name 、runner_name 、runner_id 、workflow_run_id 和 business_id 会有条件地映射为 target.resource.attribute.labels 数组中的标签。 |
(解析器逻辑) | read_only_udm.metadata.event_timestamp |
如果时间戳不是直接以支持的格式提供,解析器会尝试从各种字段(包括 ts 、now 、created_at 、Timestamp 、time 和 raw.now )中提取并转换时间戳。 |
(解析器逻辑) | read_only_udm.network.http.method |
HTTP 方法派生自 method 、column1 、request_method 、http_method 或 raw.method 字段,并转换为大写。 |
(解析器逻辑) | read_only_udm.target.application |
目标应用派生自 process 、program 或 app 字段(如果存在)。 |
变化
2023-12-18
- bug 修复:
- 如果“process_type”为“github_production”,则添加了一个 Grok 模式来提取“kv_data”。
- 如果“process_type”为“github_production”,则将“user”映射到“target.user.user_display_name”。
- 如果“process_type”为“github_production”,则将“user_id”映射到“target.user.userid”。
- 将“referrer”映射到“network.http.referral_url”。
- 已将“user_session_id”映射到“network.session_id”。
- 将“ip”映射到“principal.ip”。
- 将“from”映射到“additional.fields”。
- 将“request_category”映射到了“additional.fields”。
- 将“device_cookie”映射到“additional.fields”。
- 将“operation_type”映射到“additional.fields”。
- 将“category_type”映射到了“additional.fields”。
- 将“note”映射到“additional.fields”。
- 将“read”映射到“additional.fields”。
- 将“pre_perform_allocation_count”映射到了“additional.fields”。
- 将“后端”映射到“additional.fields”。
- 将“queue”映射到了“additional.fields”。
- 将“class”映射到“additional.fields”。
- 将“success”映射到“additional.fields”。
- 将“controller_action”映射到“security_result.detection_fields”。
- 将“two_factor”映射到“security_result.detection_fields”。
2023-10-25
- 如果“public_repo”为“false”,则将“target.location.name”设置为“PRIVATE”,否则设置为“PUBLIC”。
2023-10-11
- 将“user_agent”映射到“network.http.user_agent”和“network.http.parsed_user_agent”。
- 将“request_method”映射到“network.http.method”。
- 将“application_name”映射到“target.application”。
- 将“status_code”映射到“network.http.response_code”。
- 已将“url_path”映射到“target.url”。
- 已将“user_id”映射到“target.userid”。
- 将“transport_protocol_name”映射到“network.application_protocol”。
- 将“raw.now”映射到“metadata.event_timestamp”。
- 将“raw.ip”映射到“principal.ip”。
- 将“raw.request_id”映射到“metadata.product_log_id”。
- 将“raw.repo”映射到“target.url”。
- 将“raw.action”映射到“security_result.summary”。
- 将“raw.protocol”映射到“network.application_protocol”。
- 将“raw.message”映射到“metadata.description”。
- 将“raw.at”映射到“security_result.action”。
- 已将“raw.login”映射到“target.user_display_name”。
- 将“raw.user_id”映射到“target.userid”。
- 将“raw.failure_reason”“raw.failure_type”“raw.raw_login”和“raw.from”映射到了“additional.fields”。
- 将“programmatic_access_type”“actor_id”“token_id”“token_scopes”“integration”“query_string”“rate_limit_remaining”“request_body”“route”“business”“org_id”“repo_id”“public_repo”“_document_id”“operation_type”“repository_public”映射到“additional.fields”。
2023-07-31
- bug 修复:
- 向 Grok 模式添加了“on_error”。
- 将“workflow_run.id”映射到“target.resource.attribute.labels”。
- 将“workflow_run.event”映射到“additional.fields”。
- 将“workflow_run.actor.login”映射到“principal.user.userid”。
- 将“workflow_run.head_branch”映射到“security_result.about.labels”。
- 将“workflow_run.head_sha”映射到“target.file.sha256”。
- 将“enterprise.name”映射到了“additional.fields”。
- 将“workflow.name”映射到“security_result.about.labels”。
- 将“workflow_run.workflow_id”映射到“security_result.about.labels”。
2023-06-22
- 添加了对“github_auth”“haproxy”“github_access”“github_unicorn”“github_production”“hookshot-go”“babeld”“github_gitauth”“babeld2hydro”“authzd”“gitrpcd”“agent”“git-daemon”“github_resqued”“sudo”“systemd”和“github_audit”syslog 日志格式的支持。
2023-06-09
- Enhancement-
- 如果“external_identity_nameid”采用电子邮件地址格式,则将其映射到“target.user.email_addresses”。
- 从“external_identity_nameid”中提取用户名并映射到“target.user.userid”。
2023-01-13
- Enhancement-
- 将“actor_ip”映射到“principal.ip”。
- 将“hashed_token”映射到“network.session_id”。
- 将“external_identity_nameid”映射到“target.user.userid”
- 将“external_identity_username”映射到“target.user.user_display_name”。
2022-11-28
- 增强功能 - 将“config.url”映射到“target.url”。
2022-07-07
- 增强功能 - 已处理并解析新提取的 JSON 格式日志,这些日志具有“git.clone”“git.push”和“workflows.prepared_workflow_job”操作。
- 将“job_name”映射到“target.resource.attribute.labels”。
- 将“job_workflow_ref”映射到“target.resource.attribute.labels”。
- 将“runner_group_id”映射到“target.resource.attribute.labels”。
- 将“runner_group_name”映射到“target.resource.attribute.labels”。
- 将“runner_name”映射到“target.resource.attribute.labels”。
- 将“runner_id”映射到“target.resource.attribute.labels”。
- “workflow_run_id”已映射到“target.resource.attribute.labels”。
- 将“actor_location.country_code”映射到“principal.location.country_or_region”。
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。