接口功能介绍
修改某条DML审计规则。内置审计规则不可以修改名字、规则参数只能修改值、可以修改数量、可以修改审计方式。自定义审计规则可以修改规则名、审计方式、sql或者正则表达式。不管是内置还是自定义审计规则,都不允许修改审计类型(如要修改请先删除后创建)。
接口约束
请先订购DRDS实例。
URI
PUT /v2/dml-audit/alter-rule
路径参数
无
Query参数
无
求参数
请求头header参数
无
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
prodInstId | 是 | String | DRDS产品实例id | ccdde51ffa53496db2c97170580c22ec | |
groupName | 是 | String | 分组名称 | 默认分组 | |
ruleId | 是 | String | 规则id,内置审计规则不可以删除,自定义规则 | ||
desc | 否 | String | 规则名,系统内置审计规则不允许修改规则名 | ||
handler | 否 | String | 审计方式,RejectHandler(拒绝) ; WarnHandler (告警) | WarnHandler | |
regexp | 否 | String | 当审计类型为RegexMatcher (正则表达式匹配),该字段必须传入 | ||
count | 否 | String | sql或数量,当type为ParameterizedSqlMatcher、SqlMatcher时,表示sql. 其他则为数量或为空。 | ||
errMsg | 否 | String | 告警或拒绝时的提示信息,默认为“SQL is not permit execute” | ||
params | 否 | String | 内置审计规则的参数(部分,并非所有内置规则都有),自定义规则无该字段 | param |
表param
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
name | 是 | String | 参数名,不能修改 | maxAffectedRows | |
value | 是 | String | 参数值,可修改 | 1000 | |
desc | 是 | String | 参数描述,不能修改 | 最大影响行数 |
响应参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
code | 是 | String | 返回码 取值范围:0表示成功,1表示失败 | 0 | |
message | 是 | String | 结果描述 | success |
请求示例
请求头header
无
请求体body
# 举例1: 修改审计方式
{
"prodInstId":"ccdde51ffa53496db2c97170580c22ec",
"groupName":"默认分组",
"ruleId": "/dbproxy_cluster/dbproxy_cluster_0000000372/groups/group_0000000429/interceptor/dml/interceptor_0000000430",
"handler":"WarnHandler"
}
# 举例2: 修改自定义审计规则的规则名、审计方式、提示信息、sql或数量或者正则
{
"prodInstId":"ccdde51ffa53496db2c97170580c22ec",
"groupName":"默认分组",
"ruleId": "/dbproxy_cluster/dbproxy_cluster_0000000372/groups/group_0000000429/interceptor/dml/interceptor_0000000564",
"handler":"WarnHandler",
"desc": "不允许select sleep(8)语句",
"errMsg":"cant' execute sleep(8)",
"count": "select sleep(8)"
}
# 举例3: 修改自定义审计规则的审计类型、sql或数量或者正则
{
"prodInstId":"ccdde51ffa53496db2c97170580c22ec",
"groupName":"默认分组",
"ruleId": "/dbproxy_cluster/dbproxy_cluster_0000000372/groups/group_0000000429/interceptor/dml/interceptor_0000000564",
"handler":"WarnHandler",
"type":"RegexMatcher",
"desc": "不允许select sleep语句",
"errMsg":"cant' execute sleep",
"regexp": "(?i)^select sleep\\s.*$"
}
响应示例
{
"code": 0,
"message": "success"
}
状态码
请参考 状态码说明。