本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 BatchUpdateFindings 更新结果
BatchUpdateFindings用于更新与客户处理来自查找提供商的调查结果相关的信息。它可以由客户使用,也可以由代表客户工作的 SIEM、票证、事件管理或 SOAR 工具使用。 BatchUpdateFindings不能用于创建新发现。它可以用来一次更新多达 100 个结果。
每当 Security Hub 收到更新调查结果的BatchUpdateFindings请求时,它都会自动在亚马逊中生成一个Security Hub Findings - Imported事件 EventBridge。请参阅 自动响应和补救。
BatchUpdateFindings 不会更改结果的 UpdatedAt 字段。UpdatedAt 仅反映来自结果提供商的最新更新。
的可用字段BatchUpdateFindings
管理员帐户可以使用更新BatchUpdateFindings其帐户或其成员帐户的搜索结果。成员账户可以使用BatchUpdateFindings来更新其账户的调查结果。
客户只能BatchUpdateFindings使用更新以下字段和对象。
-
Confidence -
Criticality -
Note -
RelatedFindings -
Severity -
Types -
UserDefinedFields -
VerificationState -
Workflow
默认情况下,管理员和成员帐户有权访问上述所有字段和字段值。Security Hub 还提供上下文密钥,允许您限制对字段和字段值的访问。
例如,您可能只允许成员账户设置Workflow.Status为RESOLVED。或者您可能不想允许更改成员帐户Severity.Label。
配置对的访问权限BatchUpdateFindings
您可以配置 IAM 策略以限制访问权限 BatchUpdateFindings,使用更新字段和字段值。
在限制访问的语句中 BatchUpdateFindings,使用以下值。
-
Action是securityhub:BatchUpdateFindings -
Effect是Deny -
对于
Condition,您可以基于以下理由拒绝BatchUpdateFindings请求:-
该发现包括一个特定的字段。
-
该发现包括一个特定的字段值。
-
条件键
这些是限制访问的条件键BatchUpdateFindings。
- ASFF 字段
-
ASFF 字段的条件键如下所示。
securityhub:ASFFSyntaxPath/<fieldName>替换为 ASFF 字段。<fieldName>例如,要限制对该
Workflow.Status字段的访问权限,请使用securityhub:ASFFSyntaxPath/Workflow.Status。
不允许对某个字段进行所有更新
要防止用户对特定字段进行任何更新,请使用如下条件:
"Condition": { "Null": { "securityhub:ASFFSyntaxPath/<fieldName>": "false" } }
例如,以下语句表示BatchUpdateFindings不能用于更新工作流状态。
{ "Sid": "VisualEditor0", "Effect": "Deny", "Action": "securityhub:BatchUpdateFindings", "Resource": "*", "Condition": { "Null": { "securityhub:ASFFSyntaxPath/Workflow.Status": "false" } } }
禁用特定字段值
要防止用户将字段设置为特定值,请使用如下条件:
"Condition": { "StringEquals": { "securityhub:ASFFSyntaxPath/<fieldName>": "<fieldValue>" } }
例如,以下语句表示BatchUpdateFindings不能用于设置Workflow.Status为SUPPRESSED。
{ "Sid": "VisualEditor0", "Effect": "Deny", "Action": "securityhub:BatchUpdateFindings", "Resource": "*", "Condition": { "StringEquals": { "securityhub:ASFFSyntaxPath/Workflow.Status": "SUPPRESSED" } }
您还可以提供不允许的值列表。
"Condition": { "ForAnyValue:StringEquals": { "securityhub:ASFFSyntaxPath/<fieldName>": [ "<fieldValue1>", "<fieldValue2>", "<fieldValuen>" ] } }
例如,以下语句表示BatchUpdateFindings不能用于将设置Workflow.Status为RESOLVED或SUPPRESSED。
{ "Sid": "VisualEditor0", "Effect": "Deny", "Action": "securityhub:BatchUpdateFindings", "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "securityhub:ASFFSyntaxPath/Workflow.Status": [ "RESOLVED", "NOTIFIED" ] } }
使用来自的 batch-update-findings命令Amazon CLI
在中Amazon Command Line Interface,您可以使用batch-update-findings命令更新调查结果。
对于要更新的每个调查结果,您需要提供调查结果 ID 和生成调查结果的产品的 ARN。
--finding-identifiers ID="<findingID1>",ProductArn="<productARN>" ID="<findingID2>",ProductArn="<productARN2>"
当您提供要更新的属性时,可以使用 JSON 格式或快捷方式格式。
以下是使用 JSON 格式的Note对象更新的示例:
--note '{"Text": "Known issue that is not a risk.", "UpdatedBy": "user1"}'
以下是使用快捷方式格式的相同更新:
--note Text="Known issue that is not a risk.",UpdatedBy="user1"
Amazon CLI命令参考为每个字段提供了 JSON 和快捷方式语法。
以下batch-update-findings示例更新了两个发现结果以添加注释、更改严重性标签并解决这些问题。
aws securityhub batch-update-findings --finding-identifiers Id="arn:aws:securityhub:us-west-1:123456789012:subscription/pci-dss/v/3.2.1/PCI.Lambda.2/finding/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",ProductArn="arn:aws:securityhub:us-west-2::product/aws/securityhub" Id="arn:aws:securityhub:us-west-1:123456789012:subscription/pci-dss/v/3.2.1/PCI.Lambda.2/finding/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",ProductArn="arn:aws:securityhub:us-west-1::product/aws/securityhub" --note '{"Text": "Known issue that is not a risk.", "UpdatedBy": "user1"}' --severity '{"Label": "LOW"}' --workflow '{"Status": "RESOLVED"}'
这是相同的示例,但使用快捷方式而不是 JSON。
aws securityhub batch-update-findings --finding-identifiers Id="arn:aws:securityhub:us-west-1:123456789012:subscription/pci-dss/v/3.2.1/PCI.Lambda.2/finding/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",ProductArn="arn:aws:securityhub:us-west-1::product/aws/securityhub" Id="arn:aws:securityhub:us-west-1:123456789012:subscription/pci-dss/v/3.2.1/PCI.Lambda.2/finding/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",ProductArn="arn:aws:securityhub:us-west-1::product/aws/securityhub" --note Text="Known issue that is not a risk.",UpdatedBy="user1" --severity Label="LOW" --workflow Status="RESOLVED"