New-SqlColumnMasterKeySettings
Cria um objeto SqlColumnMasterKeySettings que descreve uma chave mestra armazenada em um provedor e caminho de repositório de chaves especificados arbitrariamente.
Sintaxe
New-SqlColumnMasterKeySettings
[-KeyStoreProviderName] <String>
[-KeyPath] <String>
[[-Signature] <String>]
[-KeyVaultAccessToken <String>]
[-ManagedHsmAccessToken <String>]
[-AllowEnclaveComputations]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Description
O cmdlet
O cmdlet pode se comunicar com um repositório de chaves que contém a chave mestra da coluna para gerar uma assinatura de propriedades de metadados de chave. Se a chave estiver armazenada no Azure, você precisará especificar um token de autenticação válido para um cofre de chaves ou um HSM gerenciado que contém a chave. 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: gerar configurações para uma chave mestra de coluna que está no Azure Key Vault e não está habilitada para enclave.
$cmkSettings = New-SqlColumnMasterKeySettings -KeyStoreProviderName 'AZURE_KEY_VAULT' -KeyPath 'https://myvault.vault.azure.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700'
Exemplo 2: gerar configurações para uma chave mestra de coluna que está em um provedor personalizado
$cmkSettings = New-SqlColumnMasterKeySettings -KeyStoreProviderName 'CUSTOM_PROVIDER' -KeyPath '\\SecureNetworkShare\Keys\AlwaysEncrypted.key'
Exemplo 3: Gerar configurações para uma chave mestra de coluna que está no Azure Key Vault, permite cálculos de enclave e é assinada usando a assinatura fornecida.
$cmkSettings = New-SqlColumnMasterKeySettings -KeyStoreProviderName 'AZURE_KEY_VAULT' -KeyPath 'https://myvault.vault.azure.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700' -AllowEnclaveComputations -Signature '0x19BEB4F27F582FDBBD0C7E5F92CF161D79D5E7F5A5183F9C8E710252E7028A3654FBEAF834EE45925024F1A32BD3C6D7D92B46E38690830E20E0777607B073E6665EB05E39263C02557D1208ACECB2251A108D0DEFC25232B67FD223C590258C817292FAFCE2388507812D64A0AEC9E546B0B8E4B2F3EA436053CB158F3CF478C5F5EDA511D0F752F60C3B129BF21356A93368FCC7FD6FAA8DB4E919EB551F375181CA3F4D0404A811C99BD2C8D10C0003AC12B138371F2D76611768B4E84D44116C42F00D679B36D41FBD9467B58291B1F4348C7B422793DA0614EF980CA0A7F42B6D627AFA5A753F0869D2C2F9B0FD38289D5433CE9266C6F867334654BE12'
Exemplo 4: Gerar configurações para uma chave mestra de coluna que está no Azure Key Vault, permite cálculos de enclave e é assinado automaticamente.
# Connect to Azure account.
Import-Module Az.Accounts -MinimumVersion 2.2.0
Connect-AzAccount
# 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 a key vault in Azure Key Vault to sign the column master key properties.
$cmkSettings = New-SqlColumnMasterKeySettings -KeyStoreProviderName 'AZURE_KEY_VAULT' -KeyPath 'https://myvault.vault.azure.net/keys/CMK/4c05f1a41b12488f9cba2ea964b6a700' -AllowEnclaveComputations -KeyVaultAccessToken $keyVaultAccessToken
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: | 2 |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-KeyPath
Especifica o caminho dentro do repositório de chaves da chave mestra física.
Tipo: | String |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-KeyStoreProviderName
Especifica o nome do provedor do repositório de chaves usado para proteger a chave mestra física.
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
Tipo: | String |
Cargo: | 3 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |