Compartilhar via


New-SqlAzureKeyVaultColumnMasterKeySettings

Cria um objeto SqlColumnMasterKeySettings que descreve uma chave assimétrica armazenada no Azure Key Vault.

Sintaxe

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

Description

Cria um objeto SqlColumnMasterKeySettings que descreve uma chave mestra de coluna armazenada em um cofre de chaves ou em um HSM gerenciado no Azure Key Vault.

Se você estiver usando o cmdlet para assinar metadados de chave, precisará especificar um token de autenticação válido para cofres de chaves ou HSMs gerenciados. Como alternativa, você pode autenticar no Azure com Add-SqlAzureAuthenticationContext antes de chamar esse cmdlet.

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

Exemplos

Exemplo 1: Criar um objeto SqlColumnMasterKeySettings simples

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

Esse comando cria um objeto SqlColumnMasterKeySettings que faz referência a uma chave no Azure Key Vault e armazena o resultado na variável chamada $CMKSettings

Exemplo 2: Criar um SqlColumnMasterKeySettings com propriedades autoassinadas permitindo 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

Esse comando cria um objeto SqlColumnMasterKeySettings que faz referência a uma chave em um cofre de chaves e armazena o resultado na variável chamada $cmkSettings. A chave permite cálculos de enclave. Como o parâmetro de assinatura não é especificado, o cmdlet calcula automaticamente a assinatura e preenche a propriedade Signature do objeto SqlColumnMasterKeySettings.

Este exemplo ilustra a obtenção de um token de autenticação para cofres de chaves no Azure Key Vault e a passagem para o cmdlet.

Exemplo 3: Criar um objeto SqlColumnMasterKeySettings permitindo 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

Esse comando cria um objeto SqlColumnMasterKeySettings que faz referência a uma chave em um cofre de chaves e armazena o resultado na variável chamada $cmkSettings. A chave permite cálculos de enclave. A assinatura das propriedades de chave é especificada no parâmetro Signature.

Parâmetros

-AllowEnclaveComputations

Especifica se a chave mestra de coluna permite cálculos de enclave. Se o parâmetro for especificado, os enclaves seguros do lado do servidor poderão executar cálculos em dados protegidos com a chave mestra de coluna. Não é válido para o SQL Server 2017 e versões mais antigas.

Tipo:SwitchParameter
Cargo:1
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyUrl

Especifica o link, como UMA URL, da chave no Azure Key Vault ou em um HSM gerenciado.

Tipo:String
Cargo:0
Valor padrão:None
Obrigatório:True
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-KeyVaultAccessToken

Especifica um token de acesso para cofres de chaves no Azure Key Vault. Use esse parâmetro se a chave mestra de coluna especificada for armazenada em um cofre de chaves no Azure Key Vault e o cmdlet deverá assinar metadados de chave.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ManagedHsmAccessToken

Especifica um token de acesso para HSMs gerenciados no Azure Key Vault. Use esse parâmetro se a chave mestra de coluna especificada for armazenada em um HSM gerenciado no Azure Key Vault e o cmdlet deverá assinar metadados de chave.

Tipo:String
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-ProgressAction

Determina como o PowerShell responde às atualizações de progresso geradas por um script, cmdlet ou provedor, como as barras de progresso geradas pelo cmdlet Write-Progress. O cmdlet Write-Progress cria barras de progresso que mostram o status de um comando.

Tipo:ActionPreference
Aliases:proga
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Signature

Especifica uma cadeia de caracteres hexadecimal que é uma assinatura digital de propriedades de chave mestra de coluna. Um driver cliente pode verificar a assinatura para garantir que as propriedades da chave mestra da coluna não tenham sido adulteradas.

Esse parâmetro só será permitido se AllowEnclaveComputations for especificado. Se AllowEnclaveComputations for especificado, mas Signature não for, o cmdlet calculará automaticamente a assinatura e preencherá a propriedade Signature do novo objeto SqlColumnMasterKeySettings do .

Tipo:String
Cargo:2
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Saídas

SqlColumnMasterKeySettings