全部产品
Search
文档中心

:DsgDesensPlanAddOrUpdate

更新时间:May 17, 2024

调用DsgDesensPlanAddOrUpdate接口新建或编辑数据脱敏规则。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称

类型

是否必选

示例值

描述

Action String DsgDesensPlanAddOrUpdate

系统规定参数。取值:DsgDesensPlanAddOrUpdate

DesensRules Array

需要新增或编辑的脱敏规则集合。

Id Integer 123

脱敏规则ID。您可调用DsgDesensPlanQueryList接口查询。

DataType String phone

敏感字段类型。

RuleName String phone_hash

脱敏规则名称。

Status Integer 1

脱敏规则的生效状态。取值如下:

  • 0:失效。
  • 1:生效。
SceneIds Array of Integer 123

二级脱敏场景ID。此处输入的二级脱敏场景需要未配置DataType参数指定的敏感字段类型脱敏规则。您可调用DsgSceneQuerySceneListByName查询脱敏场景ID。

Owner String test_user

脱敏规则的负责人。

CheckWatermark Boolean true

是否添加水印。取值如下:

  • true:是
  • false:否
DesensPlan Object

脱敏规则。

DesensPlanType String hash

脱敏规则中配置的脱敏方式。取值如下:

  • 哈希:hash
  • 假名:mapping
  • 掩盖:mask
  • 字符替换:charreplacement
  • 区间变换:intervalselect
  • 取整:decimalpoint
  • 置空:emptydesens
ExtParam Map { "algo": "MD5", "salt":6 }

脱敏规则参数。

Any { "algo": "MD5", "salt":6 }

脱敏规则参数配置,根据您要配置的脱敏规则添加不同参数,具体内容请参见下文示例。

ExtParam为动态参数,对于不同脱敏规则配置不同,参考示例如下:

哈希:
{
    "algo": "MD5",
    "salt": 6
}
假名:
{
    "charset": "Aa",
    "salt": 6
}
掩盖:
{
    "before": 3,
    "after": 4
}
自定义掩盖:
{
    "separatorList": [
        {
            "desens": true,
            "left": 3
        },
        {
            "desens": false,
            "left": 6
        },
        {
            "desens": true,
            "left": -99
        }
    ]
}
样本值字符替换:
{
    "library": "test_library",
    "position": 3
}
固定值字符替换:
{
    "replace": "repData",
    "position": 3
}
随机字符替换:
{
    "replace": "repData"
}
自定义字符替换:
{
    "separatorList": [
        {
            "desensParam": {
                "replace": "repData"
            },
            "left": 3
        },
        {
            "desensParam": {
                "library": "test_library"
            },
            "left": 6
        },
        {
            "desensParam": {
            },
            "left": 99
        }
    ]
}
区间变换:
{
    "intervalselects": [
        {
            "desens": "1",
            "interval": [
                "1",
                "100"
            ]
        }
    ]
}
取整:
{
"point":3
}
置空:
{}

具体支持的脱敏方式及相关规则,可参考DsgQueryDefaultTemplates接口查询。

返回数据

名称

类型

示例值

描述

Success Boolean true

调用是否成功。取值如下:

true:调用成功。

false:调用失败。

ErrorCode String 1029030003

错误码。

ErrorMessage String param error

错误信息。

HttpStatusCode Integer 400

HTTP状态码。

Data Boolean true

新增或编辑的执行结果。

RequestId String 102400001

请求的ID。用于定位日志,排查问题。

示例

请求示例

http(s)://[Endpoint]/?Action=DsgDesensPlanAddOrUpdate
&DesensRules=[{"id":123,"DataType":"phone","RuleName":"phone_hash","Status":1,"SceneIds":[123],"Owner":"test_user","CheckWatermark":true,"DesensPlan":{"DesensPlanType":"hash","ExtParam":{"key":"{           \"algo\": \"MD5\", \"salt\":6         }"}}}]
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<DsgDesensPlanAddOrUpdateResponse>
    <Success>true</Success>
    <ErrorCode>1029030003</ErrorCode>
    <ErrorMessage>param error</ErrorMessage>
    <HttpStatusCode>400</HttpStatusCode>
    <Data>true</Data>
    <RequestId>102400001</RequestId>
</DsgDesensPlanAddOrUpdateResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "Success" : true,
  "ErrorCode" : "1029030003",
  "ErrorMessage" : "param error",
  "HttpStatusCode" : 400,
  "Data" : true,
  "RequestId" : "102400001"
}

错误码

HttpCode

错误码

错误信息

描述

400 PARAMS.ERROR param error. 参数错误。
400 DESENSPLAN.DATATYPE.ERROR Sensitive type already has a desensitization rule. 敏感类型已经配置脱敏规则。
400 DESENSPLAN.DATATYPENOTEXIST.ERROR Sensitive type not exist. 敏感类型不存在。
400 DESENSPLAN.ID.ERROR Desensitization rule ID does not exist. 脱敏规则ID不存在。
400 DESENSPLAN.PAGESIZE.ERROR Page size is too large, maximum of 100. 页大小超限,最大为100。
400 DESENSPLAN.PARAM.ERROR Desensitization rule parameter error. 欧敏规则参数错误。
400 DESENSPLAN.SCENECODE.ERROR Scene code does not exist. 场景码不存在。
400 DESENSPLAN.SCENEID.ERROR Scene ID does not exist. 场景ID不存在。
400 DESENSPLAN.SCENEIDLEVEL.ERROR The scene is not a secondary scene. 场景不是二级场景。
400 DESENSPLAN.SIZE.ERROR The number of desens plan exceeds the limit. 脱敏规则数量超限。
403 PERMISSION.DENIED.ERROR Permission denied 权限不足。
500 UNKNOWN.ERROR unknown error. 未知错误。

访问错误中心查看更多错误码。