All Products
Search
Document Center

DataWorks:DsgDesensPlanAddOrUpdate

Last Updated:Oct 17, 2024

Adds or modifies a data masking rule.

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

Authorization information

There is currently no authorization information disclosed in the API.

Request parameters

ParameterTypeRequiredDescriptionExample
DesensRulesarray<object>Yes

A collection of data masking rules that you want to add or modify.

objectYes
IdintegerNo

The ID of the data masking rule. You can call the DsgDesensPlanQueryList operation to query the ID of the data masking rule.

123
DataTypestringYes

The sensitive field type.

phone
RuleNamestringYes

The name of the data masking rule.

phone_hash
StatusintegerNo

The status of the data masking rule. Valid values:

  • 0: expired
  • 1: effective
1
SceneIdsarrayYes

The level-2 data masking scenario.

integerNo

The ID of the level-2 data masking scenario. Make sure that the data masking rule in which the sensitive field type determined by the DataType parameter is specified is not configured for the level-2 data masking scenario that you use. You can call the DsgSceneQuerySceneListByName to query the ID of the data masking scenario.

123
OwnerstringYes

The owner of the data masking rule.

test_user
CheckWatermarkbooleanNo

Specifies whether to add a watermark. Valid values:

  • true
  • false
true
DesensPlanobjectYes

The data masking rule.

DesensPlanTypestringYes

The masking method configured in the data masking rule. Valid values:

  • hash
  • mapping
  • mask
  • charreplacement
  • intervalselect
  • decimalpoint
  • emptydesens
hash
ExtParamobjectNo

The parameters for the data masking rule.

anyNo

The parameter configurations of the data masking rule. You can add different parameters based on the data masking rule that you want to configure. For more information, see the following example.

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

The ExtParam parameter is a dynamic parameter. The value of the ExtParam parameter varies based on the data masking rule. The following example shows how to configure the parameters:

Hash:
{
    "algo": "MD5",
    "salt": 6
}
Pseudonym:
{
    "charset": "Aa",
    "salt": 6
}
Mask:
{
    "before": 3,
    "after": 4
}
Custom mask:
{
    "separatorList": [
        {
            "desens": true,
            "left": 3
        },
        {
            "desens": false,
            "left": 6
        },
        {
            "desens": true,
            "left": -99
        }
    ]
}
Sample value character replacement:
{
    "library": "test_library",
    "position": 3
}
Fixed value character replacement:
{
    "replace": "repData",
    "position": 3
}
Random character replacement:
{
    "replace": "repData"
}
Custom character replacement:
{
    "separatorList": [
        {
            "desensParam": {
                "replace": "repData"
            },
            "left": 3
        },
        {
            "desensParam": {
                "library": "test_library"
            },
            "left": 6
        },
        {
            "desensParam": {
            },
            "left": 99
        }
    ]
}
Range change:
{
    "intervalselects": [
        {
            "desens": "1",
            "interval": [
                "1",
                "100"
            ]
        }
    ]
}
Rounding:
{
"point":3
}
Left empty:
{}

You can call the DsgQueryDefaultTemplates operation to query the supported data masking methods and related rules.

Response parameters

ParameterTypeDescriptionExample
object

OpenApiResultModel

Successboolean

Indicates whether the request was successful. Valid values: true false

true
ErrorCodestring

The error code.

1029030003
ErrorMessagestring

The error message.

param error
HttpStatusCodeinteger

The HTTP status code.

400
Databoolean

The execution result of adding or modifying a data masking rule.

true
RequestIdstring

The request ID. You can locate logs and troubleshoot issues based on the ID.

102400001

Examples

Sample success responses

JSONformat

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

Error codes

HTTP status codeError codeError messageDescription
400PARAMS.ERRORparam error.-
400DESENSPLAN.DATATYPE.ERRORSensitive type already has a desensitization rule.Desensitization rules have been configured for sensitive types.
400DESENSPLAN.DATATYPENOTEXIST.ERRORSensitive type not exist.The sensitive type does not exist.
400DESENSPLAN.ID.ERRORDesensitization rule ID does not exist.The desensitization rule ID does not exist.
400DESENSPLAN.PAGESIZE.ERRORPage size is too large, maximum of 100.Page size limit, up to 100
400DESENSPLAN.PARAM.ERRORDesensitization rule parameter error.The desensitization rule parameter is incorrect.
400DESENSPLAN.SCENECODE.ERRORScene code does not exist.Scene code does not exist
400DESENSPLAN.SCENEID.ERRORScene ID does not exist.Scene ID does not exist.
400DESENSPLAN.SCENEIDLEVEL.ERRORThe scene is not a secondary scene.The scene is not a secondary scene.
400DESENSPLAN.SIZE.ERRORThe number of desens plan exceeds the limit.The number of desensitization rules exceeded the limit.
403PERMISSION.DENIED.ERRORPermission deniedInsufficient permissions.
500UNKNOWN.ERRORunknown error.Unknown error.

For a list of error codes, visit the Service error codes.