Complete-SqlColumnMasterKeyRotation

Completa la rotación de una clave maestra de columna.

Syntax

Complete-SqlColumnMasterKeyRotation
        -SourceColumnMasterKeyName <String>
        [-InputObject] <Database>
        [-Script]
        [-AccessToken <PSObject>]
        [-TrustServerCertificate]
        [-HostNameInCertificate <String>]
        [-Encrypt <String>]
        [<CommonParameters>]
Complete-SqlColumnMasterKeyRotation
        -SourceColumnMasterKeyName <String>
        [[-Path] <String>]
        [-Script]
        [-AccessToken <PSObject>]
        [-TrustServerCertificate]
        [-HostNameInCertificate <String>]
        [-Encrypt <String>]
        [<CommonParameters>]

Description

El cmdlet Complete-SqlColumnMasterKeyRotation completa el proceso de reemplazar una clave maestra de columna existente por una clave maestra de columna nueva, de destino y de columna para la característica Always Encrypted.

El cmdlet obtiene todos los objetos de clave de cifrado de columna que contienen valores de clave cifrados que se cifran con la clave maestra de columna de origen especificada.

A continuación, el cmdlet actualiza cada objeto de clave de cifrado de columna para quitar la entrada de un valor cifrado que se generó mediante la clave maestra de columna especificada.

Como resultado, cada objeto de clave de cifrado de columna afectada tendrá solo una entrada de valor cifrada, generada mediante la clave maestra de columna que es el destino de la rotación.

Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.

Ejemplos

Ejemplo 1: Completar el proceso de rotación de la clave maestra de columna

PS C:\> Cleanup-SqlColumnMasterKey -SourceColumnMasterKeyName "CMK1"

Este comando completa el proceso de rotación de la clave maestra de columna denominada CMK1.

Parámetros

-AccessToken

Token de acceso que se usa para autenticarse en SQL Server, como alternativa a la autenticación de usuario o contraseña de Windows.

Esto se puede usar, por ejemplo, para conectarse a SQL Azure DB y SQL Azure Managed Instance usar o Service Principal .Managed Identity

El parámetro que se va a usar puede ser una cadena que representa el token o un PSAccessToken objeto tal como se devuelve mediante la ejecución Get-AzAccessToken -ResourceUrl https://database.windows.netde .

Este parámetro es nuevo en la versión 22 del módulo.

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

-Encrypt

Tipo de cifrado que se va a usar al conectarse a SQL Server.

Este valor se asigna a la Encrypt propiedad SqlConnectionEncryptOption del objeto SqlConnection del controlador Microsoft.Data.SqlClient.

En la versión 22 del módulo, el valor predeterminado es Optional (por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "Obligatorio", lo que puede crear un cambio importante para los scripts existentes.

Este parámetro es nuevo en la versión 22 del módulo.

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

Nombre de host que se va a usar al validar el certificado TLS/SSL de SQL Server. Debe pasar este parámetro si la instancia de SQL Server está habilitada para Forzar cifrado y desea conectarse a una instancia mediante el nombre de host o el nombre corto. Si se omite este parámetro, es necesario pasar el nombre de dominio completo (FQDN) a -ServerInstance para conectarse a una instancia de SQL Server habilitada para forzar el cifrado.

Este parámetro es nuevo en la versión 22 del módulo.

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

-InputObject

Especifica el objeto de base de datos SQL para el que este cmdlet ejecuta la operación.

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

-Path

Especifica la ruta de acceso a la base de datos SQL, para la que este cmdlet ejecuta la operación. Si no especifica un valor para el parámetro , el cmdlet usa la ubicación de trabajo actual.

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

-Script

Indica que este cmdlet ejecuta un script para completar la rotación de una clave maestra de columna.

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

-SourceColumnMasterKeyName

Especifica el nombre de la clave maestra de columna de origen.

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

-TrustServerCertificate

Indica si el canal se cifrará al pasar la cadena de certificados para validar la confianza.

En la versión 22 del módulo, el valor predeterminado es $true (por compatibilidad con v21). En la versión 23+ del módulo, el valor predeterminado será "$false", que puede crear un cambio importante para los scripts existentes.

Este parámetro es nuevo en la versión 22 del módulo.

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

Entradas

Microsoft.SqlServer.Management.Smo.Database

Salidas

System.Object