Set-AzureRmSqlDatabaseDataMaskingRule

Sets the properties of a data masking rule for a database.

Warning

The AzureRM PowerShell module has been officially deprecated as of February 29, 2024. Users are advised to migrate from AzureRM to the Az PowerShell module to ensure continued support and updates.

Although the AzureRM module may still function, it's no longer maintained or supported, placing any continued use at the user's discretion and risk. Please refer to our migration resources for guidance on transitioning to the Az module.

Syntax

Set-AzureRmSqlDatabaseDataMaskingRule
   [-MaskingFunction <String>]
   [-PrefixSize <UInt32>]
   [-ReplacementString <String>]
   [-SuffixSize <UInt32>]
   [-NumberFrom <Double>]
   [-NumberTo <Double>]
   [-PassThru]
   -SchemaName <String>
   -TableName <String>
   -ColumnName <String>
   [-ServerName] <String>
   [-DatabaseName] <String>
   [-ResourceGroupName] <String>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Set-AzureRmSqlDatabaseDataMaskingRule cmdlet sets a data masking rule for an Azure SQL database. To use the cmdlet, provide the ResourceGroupName, ServerName, DatabaseName, and RuleId parameters to identify the rule. You can provide any of the parameters of SchemaName, TableName, and ColumnName to retarget the rule. Specify the MaskingFunction parameter to modify how the data is masked. If you specify a value of Number or Text for MaskingFunction, you can specify the NumberFrom and NumberTo parameters for number masking or the PrefixSize, ReplacementString, and SuffixSize parameters for text masking. If the command succeeds, and if you specify the PassThru parameter, the cmdlet returns an object that describes the data masking rule properties and the rule identifiers. Rule identifiers include, but are not limited to, ResourceGroupName, ServerName, DatabaseName, and RuleId. This cmdlet is also supported by the SQL Server Stretch Database service on Azure.

Examples

Example 1: Change the range of a data masking rule in a database

PS C:\>Set-AzureRmSqlDatabaseDataMaskingRule -ResourceGroupName $params.rgname -ServerName $params.serverName  -DatabaseName $params.databaseName -SchemaName "dbo" -TableName  "table1" -ColumnName "column1" -MaskingFunction "Default"

This command modifies a data masking rule that has the ID Rule17. That rule operates in the database named Database01 on server Server01. This command changes the boundaries for the interval in which a random number is generated as the masked value. The new range is between 23 and 42.

Parameters

-ColumnName

Specifies the name of the column targeted by the masking rule.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DatabaseName

Specifies the name of the database.

Type:String
Position:2
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-DefaultProfile

The credentials, account, tenant, and subscription used for communication with azure

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaskingFunction

Specifies the masking function that the rule uses. The acceptable values for this parameter are:

  • Default
  • NoMasking
  • Text
  • Number
  • SocialSecurityNumber
  • CreditCardNumber
  • Email The default value is Default.
Type:String
Accepted values:NoMasking, Default, Text, Number, SocialSecurityNumber, CreditCardNumber, Email
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-NumberFrom

Specifies the lower bound number of the interval from which a random value is selected. Specify this parameter only if you specify a value of Number for the MaskingFunction parameter. The default value is 0.

Type:Nullable<T>[Double]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-NumberTo

Specifies the upper bound number of the interval from which a random value is selected. Specify this parameter only if you specify a value of Number for the MaskingFunction parameter. The default value is 0.

Type:Nullable<T>[Double]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PrefixSize

Specifies the number of characters at the start of the text that are not masked. Specify this parameter only if you specify a value of Text for the MaskingFunction parameter. The default value is 0.

Type:Nullable<T>[UInt32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ReplacementString

Specifies the number of characters at the end of the text that are not masked. Specify this parameter only if you specify a value of Text for the MaskingFunction parameter. The default value is 0.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ResourceGroupName

Specifies the name of the resource group to which the database is assigned.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SchemaName

Specifies the name of a schema.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-ServerName

Specifies the name of the server that hosts the database.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SuffixSize

Specifies the number of characters at the end of the text that are not masked. Specify this parameter only if you specify a value of Text for the MaskingFunction parameter. The default value is 0.

Type:Nullable<T>[UInt32]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-TableName

Specifies the name of the database table that contains the masked column.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

String

Nullable<T>[[System.UInt32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Nullable<T>[[System.Double, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]

Outputs

DatabaseDataMaskingRuleModel