New-SqlAzureKeyVaultColumnMasterKeySettings

Crea un objeto SqlColumnMasterKeySettings que describe una clave asimétrica almacenada en el Almacén de claves de Azure.

Syntax

New-SqlAzureKeyVaultColumnMasterKeySettings
   [-KeyUrl] <String>
   [[-Signature] <String>]
   [-KeyVaultAccessToken <String>]
   [-ManagedHsmAccessToken <String>]
   [-AllowEnclaveComputations]
   [<CommonParameters>]

Description

Crea un objeto SqlColumnMasterKeySettings que describe una clave maestra de columna almacenada en un almacén de claves o en un HSM administrado en Azure Key Vault.

Si usa el cmdlet para firmar metadatos de clave, debe especificar un token de autenticación válido para almacenes de claves o HSM administrados. Como alternativa, puede autenticarse en Azure con Add-SqlAzureAuthenticationContext antes de llamar a este cmdlet.

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

Ejemplos

Ejemplo 1: Crear un objeto SqlColumnMasterKeySettings simple

$CMKSettings = New-SqlAzureKeyVaultColumnMasterKeySettings -KeyUrl 'https://myvault.vault.contoso.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700'

Este comando crea un objeto SqlColumnMasterKeySettings que hace referencia a una clave en Azure Key Vault y almacena el resultado en la variable denominada $CMKSettings

Ejemplo 2: Creación de un objeto SqlColumnMasterKeySettings con propiedades autofirmadas que permiten cálculos de enclave

# Obtain an access token for key vaults.
$keyVaultAccessToken = (Get-AzAccessToken -ResourceUrl https://vault.azure.net).Token

# Pass the token to the cmdlet. It will use the token to communicate with the key vault containing the column master key to sign the column master key metadata properties.
$cmkSettings = New-SqlAzureKeyVaultColumnMasterKeySettings -KeyUrl 'https://myvault.vault.azure.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700' -AllowEnclaveComputations -keyVaultAccessToken $keyVaultAccessToken

Este comando crea un objeto SqlColumnMasterKeySettings que hace referencia a una clave de un almacén de claves y almacena el resultado en la variable denominada $cmkSettings. La clave permite cálculos de enclave. Dado que no se especifica el parámetro signature, el cmdlet calcula automáticamente la firma y rellena la propiedad Signature del objeto SqlColumnMasterKeySettings.

En este ejemplo se muestra cómo obtener un token de autenticación para almacenes de claves en Azure Key Vault y pasarlo al cmdlet .

Ejemplo 3: Crear un objeto SqlColumnMasterKeySettings que permita cálculos de enclave

# Note: actual signature truncated for brevity
$signature = "0x19BEB4F27F582F...89D5433CE9266C6F867334654BE12"
$cmkSettings = New-SqlAzureKeyVaultColumnMasterKeySettings -KeyUrl 'https://myvault.vault.contoso.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700' -AllowEnclaveComputations -Signature $signature

Este comando crea un objeto SqlColumnMasterKeySettings que hace referencia a una clave de un almacén de claves y almacena el resultado en la variable denominada $cmkSettings. La clave permite cálculos de enclave. La firma de las propiedades de clave se especifica en el parámetro Signature .

Parámetros

-AllowEnclaveComputations

Especifica si la clave maestra de columna permite cálculos de enclave. Si se especifica el parámetro , los enclaves seguros del lado servidor podrán realizar cálculos en los datos protegidos con la clave maestra de columna. No es válido para SQL Server 2017 y versiones anteriores.

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

-KeyUrl

Especifica el vínculo, como una dirección URL, de la clave de Azure Key Vault o un HSM administrado.

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

-KeyVaultAccessToken

Especifica un token de acceso para almacenes de claves en Azure Key Vault. Use este parámetro si la clave maestra de columna especificada se almacena en un almacén de claves de Azure Key Vault y se espera que el cmdlet firme los metadatos de clave.

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

-ManagedHsmAccessToken

Especifica un token de acceso para los HSM administrados en Azure Key Vault. Use este parámetro si la clave maestra de columna especificada se almacena en un HSM administrado en Azure Key Vault y se espera que el cmdlet firme los metadatos de clave.

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

-Signature

Especifica una cadena hexadecimal que es una firma digital de las propiedades de clave maestra de columna. Un controlador cliente puede comprobar la firma para asegurarse de que las propiedades de la clave maestra de columna no se han alterado.

Este parámetro solo se permite si se especifica AllowEnclaveComputations . Si se especifica AllowEnclaveComputations , pero Signature no, el cmdlet calcula automáticamente la firma y rellena la propiedad Signature del nuevo objeto SqlColumnMasterKeySettings .

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

Salidas

SqlColumnMasterKeySettings