
# 更新扫描规则 - UpdateScanRule
#### 功能介绍
根据指定的规则ID和项目ID，更新扫描规则的详细信息，包括规则名称、描述、类型、匹配逻辑等内容。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-dsc/dsc_02_0008.html)。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-dsc/dsc_02_0031.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
 
#### URI
PUT /v1/{project_id}/scan-rules/{rule_id}
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                |
|:---|:---|:---|:---|
| project_id | 是    | String | 项目ID，用于标识具体的项目。   |
| rule_id    | 是    | String | 规则ID，用于标识具体的扫描规则。 |
   
#### 请求参数
表2请求Body参数 
| 参数             | 是否必选 | 参数类型                                                                                       | 描述                                           |
|:---|:---|:---|:---|
| category       | 否    | String                                                                                     | 规则类别，用于区分内置规则（BUILT_IN）和用户自定义规则（BUILT_SELF）。 |
| content        | 否    | Array of [ScanRuleContentInfo] objects       | 规则内容列表，包含规则的具体内容信息。                          |
| logic_operator | 否    | String                                                                                     | 逻辑运算符，支持"AND"（与）、"OR"（或）、"REGEX"（正则表达式）。     |
| match_rate     | 否    | Integer                                                                                    | 匹配率，表示规则匹配的准确率或优先级。                          |
| min_match      | 否    | Integer                                                                                    | 最小匹配次数，表示规则匹配时需要满足的最小条件。                     |
| rule_desc      | 否    | String                                                                                     | 规则描述，对规则功能的简要说明。                             |
| rule_name      | 否    | String                                                                                     | 规则名称，用于标识和管理规则。                              |
| rule_type      | 否    | String                                                                                     | 规则类型，包括关键字（KEYWORD）、正则表达式（REGEX）或自然语言（NLP）。  |
| templates      | 否    | Array of [CreateTemplateRuleInfo] objects | 模板关联信息，包含规则与模板的关联详情。                         |
   
 表3ScanRuleContentInfo 
| 参数             | 是否必选 | 参数类型   | 描述                      |
|:---|:---|:---|:---|
| effective_mode | 否    | String | 规则生效模式，表示规则的应用方式。       |
| location       | 否    | String | 规则应用位置，表示规则在数据中的具体应用位置。 |
| rule_content   | 否    | String | 规则内容，表示规则的具体内容。         |
   
 表4CreateTemplateRuleInfo 
| 参数                | 是否必选 | 参数类型    | 描述                 |
|:---|:---|:---|:---|
| classification_id | 否    | String  | 分级分类ID，表示该规则所属的分类。 |
| is_used           | 否    | Boolean | 是否启用，表示该规则是否被启用。   |
| rule_id           | 否    | String  | 规则ID，用于唯一标识该规则。    |
| security_level_id | 否    | String  | 风险等级ID，表示该规则的风险等级。 |
| template_id       | 否    | String  | 模板ID，用于标识具体的扫描模板。  |
   
#### 响应参数
**状态码：200**
表5响应Body参数 
| 参数     | 参数类型   | 描述                                    |
|:---|:---|:---|
| msg    | String | 返回消息，用于描述操作结果或状态信息。                   |
| status | String | 返回状态，表示操作是否成功，如'200'表示成功，'400'表示无效请求。 |
   
**状态码：201**
规则更新成功。
#### 请求示例
```
PUT /v1/{project_id}/scan-rules/{rule_id}
{
  "category" : "string",
  "content" : [ { } ],
  "logic_operator" : "string",
  "match_rate" : 0,
  "min_match" : 0,
  "rule_desc" : "string",
  "rule_name" : "string",
  "rule_type" : "string",
  "templates" : [ { } ]
}
```
#### 响应示例
无
#### 状态码
| 状态码 | 描述              |
|:---|:---|
| 200 | 请求成功，返回更新结果。    |
| 201 | 规则更新成功。         |
| 401 | 未授权，用户未登录或令牌无效。 |
| 403 | 无权限访问该资源。       |
| 404 | 未找到指定的规则。       |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-dsc/ErrorCode.html)。
