Data Masking Rules - Create Or Update

Creates or updates a database data masking rule.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/dataMaskingPolicies/Default/rules/{dataMaskingRuleName}?api-version=2021-11-01

URI Parameters

Name In Required Type Description
databaseName
path True

string

The name of the database.

dataMaskingPolicyName
path True

DataMaskingPolicyName

The name of the database for which the data masking policy applies.

dataMaskingRuleName
path True

string

The name of the data masking rule.

resourceGroupName
path True

string

The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.

serverName
path True

string

The name of the server.

subscriptionId
path True

string

The subscription ID that identifies an Azure subscription.

api-version
query True

string

The API version to use for the request.

Request Body

Name Required Type Description
properties.columnName True

string

The column name on which the data masking rule is applied.

properties.maskingFunction True

DataMaskingFunction

The masking function that is used for the data masking rule.

properties.schemaName True

string

The schema name on which the data masking rule is applied.

properties.tableName True

string

The table name on which the data masking rule is applied.

properties.aliasName

string

The alias name. This is a legacy parameter and is no longer used.

properties.numberFrom

string

The numberFrom property of the masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored.

properties.numberTo

string

The numberTo property of the data masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored.

properties.prefixSize

string

If maskingFunction is set to Text, the number of characters to show unmasked in the beginning of the string. Otherwise, this parameter will be ignored.

properties.replacementString

string

If maskingFunction is set to Text, the character to use for masking the unexposed part of the string. Otherwise, this parameter will be ignored.

properties.ruleState

DataMaskingRuleState

The rule state. Used to delete a rule. To delete an existing rule, specify the schemaName, tableName, columnName, maskingFunction, and specify ruleState as disabled. However, if the rule doesn't already exist, the rule will be created with ruleState set to enabled, regardless of the provided value of ruleState.

properties.suffixSize

string

If maskingFunction is set to Text, the number of characters to show unmasked at the end of the string. Otherwise, this parameter will be ignored.

Responses

Name Type Description
200 OK

DataMaskingRule

Successfully set a database data masking rule.

201 Created

DataMaskingRule

Successfully created a database data masking rule.

Other Status Codes

*** Error Responses: ***

Examples

Create/Update data masking rule for default max.
Create/Update data masking rule for default min.
Create/Update data masking rule for numbers.
Create/Update data masking rule for text.

Create/Update data masking rule for default max.

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/rule1?api-version=2021-11-01

{
  "properties": {
    "aliasName": "nickname",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "maskingFunction": "Default",
    "ruleState": "Enabled"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": "nickname",
    "maskingFunction": "Default",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": "nickname",
    "maskingFunction": "Default",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}

Create/Update data masking rule for default min.

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/rule1?api-version=2021-11-01

{
  "properties": {
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "maskingFunction": "Default"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Default",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Default",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}

Create/Update data masking rule for numbers.

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/rule1?api-version=2021-11-01

{
  "properties": {
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "maskingFunction": "Number",
    "numberFrom": "0",
    "numberTo": "2"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Number",
    "numberFrom": "0",
    "numberTo": "2",
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Number",
    "numberFrom": "0",
    "numberTo": "2",
    "prefixSize": null,
    "suffixSize": null,
    "replacementString": null
  }
}

Create/Update data masking rule for text.

Sample Request

PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-2080/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/rule1?api-version=2021-11-01

{
  "properties": {
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "maskingFunction": "Text",
    "prefixSize": "1",
    "suffixSize": "0",
    "replacementString": "asdf"
  }
}

Sample Response

{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Text",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": "1",
    "suffixSize": "0",
    "replacementString": "asdf"
  }
}
{
  "id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/sqlcrudtest-6852/providers/Microsoft.Sql/servers/sqlcrudtest-6852/databases/sqlcrudtest-331/dataMaskingPolicies/Default/rules/",
  "name": null,
  "type": "Microsoft.Sql/servers/databases/dataMaskingPolicies/rules",
  "location": "Central US",
  "kind": null,
  "properties": {
    "id": "dbo_Table_1_test1",
    "ruleState": "Enabled",
    "schemaName": "dbo",
    "tableName": "Table_1",
    "columnName": "test1",
    "aliasName": null,
    "maskingFunction": "Text",
    "numberFrom": null,
    "numberTo": null,
    "prefixSize": "1",
    "suffixSize": "0",
    "replacementString": "asdf"
  }
}

Definitions

Name Description
DataMaskingFunction

The masking function that is used for the data masking rule.

DataMaskingPolicyName

The name of the database for which the data masking policy applies.

DataMaskingRule

A database data masking rule.

DataMaskingRuleState

The rule state. Used to delete a rule. To delete an existing rule, specify the schemaName, tableName, columnName, maskingFunction, and specify ruleState as disabled. However, if the rule doesn't already exist, the rule will be created with ruleState set to enabled, regardless of the provided value of ruleState.

DataMaskingFunction

The masking function that is used for the data masking rule.

Name Type Description
CCN

string

Default

string

Email

string

Number

string

SSN

string

Text

string

DataMaskingPolicyName

The name of the database for which the data masking policy applies.

Name Type Description
Default

string

DataMaskingRule

A database data masking rule.

Name Type Description
id

string

Resource ID.

kind

string

The kind of Data Masking Rule. Metadata, used for Azure portal.

location

string

The location of the data masking rule.

name

string

Resource name.

properties.aliasName

string

The alias name. This is a legacy parameter and is no longer used.

properties.columnName

string

The column name on which the data masking rule is applied.

properties.id

string

The rule Id.

properties.maskingFunction

DataMaskingFunction

The masking function that is used for the data masking rule.

properties.numberFrom

string

The numberFrom property of the masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored.

properties.numberTo

string

The numberTo property of the data masking rule. Required if maskingFunction is set to Number, otherwise this parameter will be ignored.

properties.prefixSize

string

If maskingFunction is set to Text, the number of characters to show unmasked in the beginning of the string. Otherwise, this parameter will be ignored.

properties.replacementString

string

If maskingFunction is set to Text, the character to use for masking the unexposed part of the string. Otherwise, this parameter will be ignored.

properties.ruleState

DataMaskingRuleState

The rule state. Used to delete a rule. To delete an existing rule, specify the schemaName, tableName, columnName, maskingFunction, and specify ruleState as disabled. However, if the rule doesn't already exist, the rule will be created with ruleState set to enabled, regardless of the provided value of ruleState.

properties.schemaName

string

The schema name on which the data masking rule is applied.

properties.suffixSize

string

If maskingFunction is set to Text, the number of characters to show unmasked at the end of the string. Otherwise, this parameter will be ignored.

properties.tableName

string

The table name on which the data masking rule is applied.

type

string

Resource type.

DataMaskingRuleState

The rule state. Used to delete a rule. To delete an existing rule, specify the schemaName, tableName, columnName, maskingFunction, and specify ruleState as disabled. However, if the rule doesn't already exist, the rule will be created with ruleState set to enabled, regardless of the provided value of ruleState.

Name Type Description
Disabled

string

Enabled

string