

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 了解 Security Hub CSPM 中的控件参数
<a name="custom-control-parameters"></a>

Sec AWS urity 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 函数应在多个可用区内运行**

  您可以指定生成通过的调查发现的可用区的最小数量。

本节介绍修改控件参数时的注意事项。

## 修改控件参数值的影响
<a name="custom-control-parameters-overview"></a>

更改参数值后，还会触发新的安全检查，根据新值对控件进行评估。然后，Security Hub CSPM 会根据新值生成新的控件调查发现。在定期更新控件调查发现期间，Security Hub CSPM 也会使用新的参数值。如果您更改了控件的参数值，但尚未启用任何包含该控件的标准，则 Security Hub CSPM 不会使用新值进行任何安全检查。您必须至少启用一个相关标准，Security Hub CSPM 才能根据新的参数值评估控件。

一个控件可以有一个或多个可自定义的参数。控件参数可能具有的数据类型如下：
+ 布尔值
+ 双精度
+ 枚举
+ EnumList
+ 整数
+ IntegerList
+ 字符串
+ StringList

自定义参数值会应用于您启用的各种标准。您无法为当前区域不支持的控件自定义参数。有关各个控件的区域限制列表，请参阅[对 Security Hub CSPM 控件的区域限制](regions-controls.md)。

对于某些控件，可接受的参数值必须介于指定范围之内才有效。在这些情况下，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`。有关更多信息，请参阅 [在一个账户和区域中恢复为默认参数值](revert-default-parameter-values.md#revert-default-parameter-values-local-config)。

## 支持自定义参数的控件
<a name="controls-list-custom-parameters"></a>

有关支持自定义参数的安全控件列表，请参阅 Security Hub CSPM 控制台的**控件**页面或 [Security Hub CSPM 控件参考](securityhub-controls-reference.md)。要以编程方式检索此列表，您可以使用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_ListSecurityControlDefinitions.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_ListSecurityControlDefinitions.html) 操作。在响应中，`CustomizableProperties` 对象指示哪些控件支持可自定义的参数。

# 查看当前控件参数值
<a name="view-control-parameters"></a>

在修改控件参数之前，了解其当前值会很有用。

您可以查看账户中各个控制参数的当前值。如果您使用集中配置，则委派的 S AWS ecurity Hub CSPM 管理员还可以查看配置策略中指定的参数值。

选择您的首选方法，然后按照以下步骤查看当前控制参数值。

------
#### [ Security Hub CSPM console ]

**查看当前控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择**控件**。选择控件。

1. 选择**参数**选项卡。此选项卡显示控件的当前参数值。

------
#### [ Security Hub CSPM API ]

**查看当前控件参数值（API）**

调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_BatchGetSecurityControls.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_BatchGetSecurityControls.html)API，并提供一个或多个安全控制 IDs 或 ARNs。响应中的 `Parameters` 对象显示指定控件的当前参数值。

例如，以下 AWS CLI 命令显示`APIGatway.1``CloudWatch.15`、和的当前参数值`IAM.7`。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub batch-get-security-controls \
--region us-east-1 \
--security-control-ids '["APIGateway.1", "CloudWatch.15", "IAM.7"]'
```

------

选择您的首选方法以查看中心配置策略中的当前参数值。

------
#### [ Security Hub CSPM console ]

**查看配置策略中的当前控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

   使用主区域中的 Security Hub CSPM 委派管理员账户的凭证登录。

1. 在导航窗格中，选择**设置**和**配置**。

1. 在**策略**选项卡上，选择配置策略，然后选择**查看详细信息**。然后将显示策略详细信息，包括当前参数值。

------
#### [ Security Hub CSPM API ]

**查看配置策略中的当前控件参数值（API）**

1. 从主区域的委派管理员账户调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetConfigurationPolicy.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetConfigurationPolicy.html) API。

1. 提供您要查看其详细信息的配置策略的 ARN 或 ID。响应包含当前参数值。

例如，以下 AWS CLI 命令检索指定配置策略中的当前控制参数值。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub get-configuration-policy \
--region us-east-1 \
--identifier "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
```

------

控件调查发现还包含控件参数的当前值。在 [AWS 安全调查结果格式 (ASFF)](securityhub-findings-format.md)中，这些值出现在 `Compliance` 对象的 `Parameters` 字段中。要在 Security Hub CSPM 上查看调查发现，在导航窗格中选择**调查发现**。要以编程方式查看调查发现，请使用 Security Hub CSPM API 的 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetFindings.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetFindings.html) 操作。

# 自定义控件参数值
<a name="customize-control-parameters"></a>

根据您是否在 Sec AWS urity Hub CSPM [中使用中央配置](central-configuration-intro.md)，自定义控制参数的说明会有所不同。中央配置是一项功能，委派的 Security Hub CSPM 管理员可以使用它来跨 AWS 区域账户和组织单位配置 Security Hub CSPM 功能（）。OUs

如果您的组织使用中心配置，则委派管理员可以创建包含自定义控制参数的配置策略。这些政策可以与集中管理的成员账户相关联 OUs，并在您所在的地区和所有关联的地区生效。委派管理员还可以将一个或多个账户指定为自行管理，这允许账户所有者在每个区域中单独配置自己的参数。如果您的组织不使用中心配置，则必须在每个账户和区域中分别自定义控制参数。

我们建议使用中心配置，因为它允许您在组织的不同部门之间调整控制参数值。例如，您的所有测试账户都可能使用特定的参数值，而所有生产账户使用的可能是不同的值。

## 自定义多个账户和区域中的控件参数
<a name="customize-control-parameters-central-config"></a>

如果您是使用中心配置的组织的 Security Hub CSPM 委派管理员，请选择您喜欢的方法，然后按照步骤自定义多个账户和区域的控件参数。

------
#### [ Security Hub CSPM console ]

**自定义多个账户和区域中的控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

   确保您已登录到主区域。

1. 在导航窗格中，选择**设置**和**配置**。

1. 选择**策略**选项卡。

1. 要创建包含自定义参数的新配置策略，请选择**创建策略**。要在现有配置策略中指定自定义参数，请选择策略，然后选择**编辑**。

   **创建具有自定义控件参数值的新的配置策略**

   1. 在**自定义策略**部分，选择要启用的安全标准和控件。

   1. 选择**自定义控制参数**。

   1. 选择一个控件，然后为一个或多个参数指定自定义值。

   1. 要自定义更多控件的参数，请选择**自定义其他控件**。

   1. 在**账户**部分，选择要应用策略的账户或 OUs 账户。

   1. 选择**下一步**。

   1. 选择**创建策略并应用**。在您的主区域和所有关联区域中，此操作将覆盖与 OUs 该配置策略关联的账户的现有配置设置。账户和 OUs 可以通过直接应用或从父级继承来与配置策略相关联。

   **自定义现有配置策略中的控件参数值**

   1. 在**控制**部分的**自定义策略**下，指定所需的新自定义参数值。

   1. 如果这是您第一次自定义此策略中的控制参数，请选择**自定义控制参数**，然后选择要自定义的控件。要自定义更多控件的参数，请选择**自定义其他控件**。

   1. 在 “**帐户**” 部分中，验证要应用策略的账户或 OUs 账户。

   1. 选择**下一步**。

   1. 再次检查您的更改，确认正确无误。完成后，选择**保存策略并应用**。在您的主区域和所有关联区域中，此操作将覆盖与 OUs 该配置策略关联的账户的现有配置设置。账户和 OUs 可以通过直接应用或从父级继承来与配置策略相关联。

------
#### [ Security Hub CSPM API ]

**自定义多个账户和区域中的控件参数值（API）**

**创建具有自定义控件参数值的新的配置策略**

1. 从主区域的委派管理员账户调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_CreateConfigurationPolicy.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_CreateConfigurationPolicy.html) API。

1. 对于 `SecurityControlCustomParameters` 对象，请提供要自定义的每个控件的标识符。

1. 对于 `Parameters` 对象，请提供要自定义的每个参数的名称。对于您自定义的每个参数，请提供 `CUSTOM` 作为 `ValueType` 的值。对于 `Value`，请提供参数的数据类型和自定义值。当 `ValueType` 的值为 `CUSTOM` 时，该 `Value` 字段不能为空。如果您的请求省略了控件支持的参数，则该参数将保留其当前值。通过调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html) API，您可以找到控件支持的参数、数据类型和有效值。

**自定义现有配置策略中的控件参数值**

1. 从主区域的委派管理员账户调用 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateConfigurationPolicy.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateConfigurationPolicy.html) API。

1. 对于 `Identifier` 字段，提供要更新配置策略的 Amazon 资源名称（ARN）或 ID。

1. 对于 `SecurityControlCustomParameters` 对象，请提供要自定义的每个控件的标识符。

1. 对于 `Parameters` 对象，请提供要自定义的每个参数的名称。对于您自定义的每个参数，请提供 `CUSTOM` 作为 `ValueType` 的值。对于 `Value`，请提供参数的数据类型和自定义值。如果您的请求省略了控件支持的参数，则该参数将保留其当前值。通过调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html) API，您可以找到控件支持的参数、数据类型和有效值。

例如，以下 AWS CLI 命令使用`daysToExpiration`参数的自定义值创建新的配置策略`ACM.1`。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub create-configuration-policy \
--region us-east-1 \
--name "SampleConfigurationPolicy" \
--description "Configuration policy for production accounts" \
--configuration-policy '{"SecurityHub": {"ServiceEnabled": true, "EnabledStandardIdentifiers": ["arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0","arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"],"SecurityControlsConfiguration":{"DisabledSecurityControlIdentifiers": ["CloudTrail.2"], "SecurityControlCustomParameters": [{"SecurityControlId": "ACM.1", "Parameters": {"daysToExpiration": {"ValueType": "CUSTOM", "Value": "Integer": 15}}}]}}}'
```

------

## 在单个账户和区域中自定义控制参数
<a name="customize-control-parameters-local-config"></a>

如果您不使用中心配置，或拥有自行管理账户，则仅可以一次在一个区域内为账户自定义控件参数。

选择您的首选方法，然后按照步骤自定义控制参数。您的更改仅适用于当前区域中的账户。要自定义其他区域中的控制参数，请在要自定义参数的每个其他账户和区域中重复以下步骤。同一个控件可以在不同的区域中使用不同的参数值。

------
#### [ Security Hub CSPM console ]

**自定义一个账户和区域中的控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择**控件**。在表中，选择支持自定义参数且想要更改其参数的控件。**自定义参数**列指示哪些控件支持自定义参数。

1. 在控件的详细信息页面上，选择**参数**选项卡，然后选择**编辑**。

1. 指定所需的参数值。

1. 或者，在**更改原因**部分中，选择自定义参数的原因。

1. 选择**保存**。

------
#### [ Security Hub CSPM API ]

**在一个账户和区域中自定义控件参数值（API）**

1. 调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_UpdateSecurityControl.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_UpdateSecurityControl.html) API。

1. 对于 `SecurityControlId`，请提供要自定义的控件的 ID。

1. 对于 `Parameters` 对象，请提供要自定义的每个参数的名称。对于您自定义的每个参数，请提供 `CUSTOM` 作为 `ValueType` 的值。对于 `Value`，请提供参数的数据类型和自定义值。如果您的请求省略了控件支持的参数，则该参数将保留其当前值。通过调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_GetSecurityControlDefinition.html) API，您可以找到控件支持的参数、数据类型和有效值。

1. （可选）对于 `LastUpdateReason`，提供自定义控制参数的理由。

例如，以下 AWS CLI 命令为的`daysToExpiration`参数定义了自定义值`ACM.1`。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub update-security-control \
--region us-east-1 \
--security-control-id ACM.1 \
--parameters '{"daysToExpiration": {"ValueType": "CUSTOM", "Value": {"Integer": 15}}}' \
--last-update-reason "Internal compliance requirement"
```

------

# 恢复为默认控制参数值
<a name="revert-default-parameter-values"></a>

控制参数可以具有 Sec AWS urity Hub CSPM 定义的默认值。Security Hub CSPM 偶尔也会更新参数的默认值，以反映不断演变的安全最佳实践。如果您还没有为控制参数指定自定义值，则该控件会自动跟踪这些更新并使用新的默认值。

您可以恢复为使用控件的默认参数值。恢复说明取决于您是否在 Security Hub CSPM 中使用[中心配置](central-configuration-intro.md)。中央配置是一项功能，委派的 Security Hub CSPM 管理员可以使用它来跨 AWS 区域账户和组织单位配置 Security Hub CSPM 功能（）。OUs

**注意**  
并非所有控件参数都具有默认 Security Hub CSPM 值。在此类情况下，当 `ValueType` 设置为 `DEFAULT` 时，没有 Security Hub CSPM 可使用的特定默认值。相反，如果没有自定义值，Security Hub CSPM 将忽略该参数。

## 在多个账户和区域中恢复为默认控件参数
<a name="revert-default-parameter-values-central-config"></a>

如果您使用中央配置，则可以恢复多个集中管理账户以及主区域和关联区域 OUs 中的控制参数。

选择您的首选方法，然后按照以下步骤，使用中心配置在多个账户和区域中恢复为默认参数值。

------
#### [ Security Hub CSPM console ]

**恢复多个账户和区域中的默认控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

   使用主区域中的 Security Hub CSPM 委派管理员账户的凭证登录。

1. 在导航窗格中，选择**设置**和**配置**。

1. 选择**策略**选项卡。

1. 选择一个策略，然后选择**编辑**。

1. 在**自定义策略**下，**控件**部分显示了您为其指定自定义参数的控件列表。

1. 找到具有一个或多个要恢复的参数值的控件。然后，选择**删除**以恢复为默认值。

1. 在 “**帐户**” 部分中，验证要应用策略的账户或 OUs 账户。

1. 选择**下一步**。

1. 再次检查您的更改，确认正确无误。完成后，选择**保存策略并应用**。在您的主区域和所有关联区域中，此操作将覆盖与 OUs 该配置策略关联的账户的现有配置设置。账户和 OUs 可以通过直接应用或从父级继承来与配置策略相关联。

------
#### [ Security Hub CSPM API ]

**恢复多个账户和区域中的默认控件参数值（API）**

1. 从主区域的委派管理员账户调用 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateConfigurationPolicy.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_UpdateConfigurationPolicy.html) API。

1. 对于 `Identifier` 字段，提供要更新策略的 Amazon 资源名称（ARN）或 ID。

1. 对于 `SecurityControlCustomParameters` 对象，请提供要为其恢复一个或多个参数的每个控件的标识符。

1. 在 `Parameters` 对象中，为要恢复的每个参数提供 `DEFAULT` 作为 `ValueType` 字段的值。当 `ValueType` 设置为 `DEFAULT` 时，无需为该 `Value` 字段提供值。如果您的请求中包含了值，Security Hub CSPM 会将其忽略。如果您的请求省略了控件支持的参数，则该参数将保留其当前值。

**警告**  
如果在 `SecurityControlCustomParameters` 字段中省略控件对象，Security Hub CSPM 会将该控件的所有自定义参数恢复为其默认值。`SecurityControlCustomParameters` 的列表完全为空会将所有控件的自定义参数恢复为其默认值。

例如，以下 AWS CLI 命令将的`daysToExpiration`控制参数恢复`ACM.1`为其在指定配置策略中的默认值。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub create-configuration-policy \
--region us-east-1 \
--identifier "arn:aws:securityhub:us-east-1:123456789012:configuration-policy/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" \
--name "TestConfigurationPolicy" \
--description "Updated configuration policy" \
--updated-reason "Revert ACM.1 parameter to default value"
--configuration-policy '{"SecurityHub": {"ServiceEnabled": true, "EnabledStandardIdentifiers": ["arn:aws:securityhub:us-east-1::standards/aws-foundational-security-best-practices/v/1.0.0","arn:aws:securityhub:::ruleset/cis-aws-foundations-benchmark/v/1.2.0"],"SecurityControlsConfiguration":{"DisabledSecurityControlIdentifiers": ["CloudTrail.2"], "SecurityControlCustomParameters": [{"SecurityControlId": "ACM.1", "Parameters": {"daysToExpiration": {"ValueType": "DEFAULT"}}}]}}}'
```

------

## 在一个账户和区域中恢复为默认参数值
<a name="revert-default-parameter-values-local-config"></a>

如果您不使用中心配置或拥有自行管理账户，则可以恢复为每次在一个区域中使用账户的默认参数值。

选择您的首选方法，然后按照以下步骤在单个区域中将您的账户恢复为默认参数值。要在其他区域中恢复为默认参数值，请在每个其他区域中重复这些步骤。

**注意**  
如果您禁用 Security Hub CSPM，则您的自定义控制参数将被重置。如果您将来再次启用 Security Hub CSPM，则所有控件最开始都将使用默认参数值。

------
#### [ Security Hub CSPM console ]

**在一个账户和区域中恢复默认控件参数值（控制台）**

1. 打开 S AWS ecurity Hub CSPM 控制台，网址为。[https://console.aws.amazon.com/securityhub/](https://console.aws.amazon.com/securityhub/)

1. 在导航窗格中，选择**控件**。选择要恢复为默认值的参数。

1. 在 `Parameters` 选项卡上，选择控制参数旁边的**自定义**。然后，选择**删除自定义**。此参数现在使用默认 Security Hub CSPM 值，并会跟踪未来的默认值更新。

1. 对要恢复的每个参数值重复上述步骤。

------
#### [ Security Hub CSPM API ]

**在一个账户和区域中恢复默认控件参数值（API）**

1. 调用 [https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_UpdateSecurityControl.html](https://docs.aws.amazon.com//securityhub/1.0/APIReference/API_UpdateSecurityControl.html) API。

1. 对于 `SecurityControlId`，请提供要恢复其参数的控件的 ARN 或 ID。

1. 在 `Parameters` 对象中，为要恢复的每个参数提供 `DEFAULT` 作为 `ValueType` 字段的值。当 `ValueType` 设置为 `DEFAULT` 时，无需为该 `Value` 字段提供值。如果您的请求中包含了值，Security Hub CSPM 会将其忽略。

1. （可选）对于 `LastUpdateReason`，提供恢复为默认参数值的原因。

例如，以下 AWS CLI 命令将的`daysToExpiration`控制参数恢复`ACM.1`为其默认值。此示例是针对 Linux、macOS 或 Unix 进行格式化的，它使用反斜杠（\$1）行继续符来提高可读性。

```
$ aws securityhub update-security-control \
--region us-east-1 \
--security-control-id ACM.1 \
--parameters '{"daysToExpiration": {"ValueType": "DEFAULT"}}' \
--last-update-reason "New internal requirement"
```

------

# 检查控件参数更改的状态
<a name="parameter-update-status"></a>

尝试自定义控件参数或恢复为默认值时，可以验证所需的更改是否已生效。这有助于确保控件按预期运行，并达到预期的安全值。如果参数更新失败，Security Hub CSPM 会保留该参数的当前值。

要验证参数更新是否成功，您可以在 Security Hub CSPM 控制台上查看控件的详细信息。在控制台中，选择导航窗格中的**控件**。然后，选择一个控件以显示其详细信息。**参数**选项卡将显示参数更改的状态。

以编程方式执行操作时，如果您更新参数的请求有效，则作为对 [https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchGetSecurityControls.html](https://docs.aws.amazon.com/securityhub/1.0/APIReference/API_BatchGetSecurityControls.html) 操作的响应，字段 `UpdateStatus` 的值将为 `UPDATING`。这意味着更新有效，但可能并非所有调查发现都包含更新后的参数值。当 `UpdateState` 的值更改为 `READY` 时，Security Hub CSPM 在对控件运行安全检查时使用更新后的控件参数值。调查发现包含更新后的参数值。

该 `UpdateSecurityControl` 操作返回无效参数值的 `InvalidInputException` 响应。该响应提供关于失败原因的其他详细信息。例如，您指定的值可能超出了参数的有效范围。或者，您指定的值可能没有使用正确的数据类型。请使用有效的输入再次提交您的请求。

如果您尝试更新参数值时出现内部故障，如果您已启用，Security Hub CSPM 会自动重试。 AWS Config 有关更多信息，请参阅 [启用和配置前的注意事项 AWS Config](securityhub-setup-prereqs.md#securityhub-prereq-config)。