了解 Security Hub CSPM 中的控件参数
AWS Security Hub CSPM 中的某些控件使用的参数会影响控件的评估方式。通常,此类控件是根据 Security Hub CSPM 定义的默认参数值进行评估的。但是,对于这些控件的子集,您可以修改参数值。当您修改控件参数值时,Security Hub CSPM 会开始根据您指定的值评估控件。如果控件底层的资源满足自定义值,Security Hub CSPM 会生成 PASSED 调查发现。如果资源不满足自定义值,Security Hub CSPM 会生成 FAILED 调查发现。
通过自定义控件参数,您可以优化 Security Hub CSPM 推荐和监控的安全最佳实践,使其符合您的业务需求和安全期望。您可以自定义控件的一个或多个参数以获得符合您安全需求的调查发现,而不是隐藏控件的调查发现。
以下是一些修改控件参数和设置自定义值的示例用例:
[CloudWatch.16]—CloudWatch 日志组应在指定的时间段内保留
您可以指定保留期限。
[IAM.7]—IAM 用户的密码策略应具有可靠的配置
您可以指定与密码强度相关的参数。
-
[EC2.18]—安全组应只允许来自授权端口的不受限制的传入流量
您可以指定哪些端口有权允许不受限制的传入流量。
-
[Lambda.5]—VPC Lambda 函数应在多个可用区内运行
您可以指定生成通过的调查发现的可用区的最小数量。
本节介绍修改控件参数时的注意事项。
修改控件参数值的影响
更改参数值后,还会触发新的安全检查,根据新值对控件进行评估。然后,Security Hub CSPM 会根据新值生成新的控件调查发现。在定期更新控件调查发现期间,Security Hub CSPM 也会使用新的参数值。如果您更改了控件的参数值,但尚未启用任何包含该控件的标准,则 Security Hub CSPM 不会使用新值进行任何安全检查。您必须至少启用一个相关标准,Security Hub CSPM 才能根据新的参数值评估控件。
一个控件可以有一个或多个可自定义的参数。控件参数可能具有的数据类型如下:
布尔值
双精度
枚举
EnumList
整数
IntegerList
字符串
StringList
自定义参数值会应用于您启用的各种标准。您无法为当前区域不支持的控件自定义参数。有关各个控件的区域限制列表,请参阅对 Security Hub CSPM 控件的区域限制。
对于某些控件,可接受的参数值必须介于指定范围之内才有效。在这些情况下,Security Hub CSPM 会提供可接受的范围。
Security Hub CSPM 会选择默认参数值,并且可能偶尔会对其进行更新。自定义控制参数后,除非您对其值进行更改,否则它会一直为您为该参数指定的值。也就是说,即使该参数的自定义值与 Security Hub CSPM 定义的当前默认值匹配,该参数也不会再跟踪对默认 Security Hub CSPM 值的更新。以下是控件 [ACM.1] 导入的证书和 ACM 颁发的证书应在指定的时间段后续订的示例:
{ "SecurityControlId": "ACM.1", "Parameters": { "daysToExpiration": { "ValueType": "CUSTOM", "Value": { "Integer": 30 } } } }
在前面的示例中,daysToExpiration 参数的自定义值为 30。此参数的当前默认值也可以是 30。如果 Security Hub CSPM 将默认值更改为 14,则此示例中的参数将不会跟踪该更改。它将保留值 30。
如果要跟踪对某参数的默认 Security Hub CSPM 值的更新,请将 ValueType 字段设置为 DEFAULT,而不是 CUSTOM。有关更多信息,请参阅 在一个账户和区域中恢复为默认参数值。
支持自定义参数的控件
有关支持自定义参数的安全控件列表,请参阅 Security Hub CSPM 控制台的控件页面或 Security Hub CSPM 控件参考。要以编程方式检索此列表,您可以使用 ListSecurityControlDefinitions 操作。在响应中,CustomizableProperties 对象指示哪些控件支持可自定义的参数。