Compartir a través de


New-SqlAzureKeyVaultColumnMasterKeySettings

Crea un objeto SqlColumnMasterKeySettings que describe una clave asimétrica almacenada en Azure Key Vault.

Sintaxis

New-SqlAzureKeyVaultColumnMasterKeySettings
   [-KeyUrl] <String>
   [[-Signature] <String>]
   [-KeyVaultAccessToken <String>]
   [-ManagedHsmAccessToken <String>]
   [-AllowEnclaveComputations]
   [-ProgressAction <ActionPreference>]
   [<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 en 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 en 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.

Tipo:SwitchParameter
Posición:1
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-KeyUrl

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

Tipo:String
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín: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.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín: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.

Tipo:String
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-ProgressAction

Determina cómo Responde PowerShell a las actualizaciones de progreso generadas por un script, cmdlet o proveedor, como las barras de progreso generadas por el cmdlet Write-Progress. El cmdlet Write-Progress crea barras de progreso que muestran el estado de un comando.

Tipo:ActionPreference
Alias:proga
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Signature

Especifica una cadena hexadecimal que es una firma digital de 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 SqlColumnMasterKeySetting s.

Tipo:String
Posición:2
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Salidas

SqlColumnMasterKeySettings