New-SqlAzureKeyVaultColumnMasterKeySettings

Erstellt ein SqlColumnMasterKeySettings-Objekt, das einen asymmetrischen Schlüssel beschreibt, der in Azure Key Vault gespeichert ist.

Syntax

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

Beschreibung

Erstellt ein SqlColumnMasterKeySettings-Objekt, das eine Spalte master Schlüssel beschreibt, der in einem Schlüsseltresor oder in einem verwalteten HSM in Azure Key Vault gespeichert ist.

Wenn Sie das Cmdlet zum Signieren von Schlüsselmetadaten verwenden, müssen Sie ein gültiges Authentifizierungstoken für Schlüsseltresore oder verwaltete HSMs angeben. Alternativ können Sie sich bei Azure mit Add-SqlAzureAuthenticationContext authentifizieren, bevor Sie dieses Cmdlet aufrufen.

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

Beispiele

Beispiel 1: Erstellen eines einfachen SqlColumnMasterKeySettings-Objekts

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

Dieser Befehl erstellt ein SqlColumnMasterKeySettings-Objekt, das auf einen Schlüssel in Azure Key Vault verweist, und speichert das Ergebnis in der Variablen namens $CMKSettings

Beispiel 2: Erstellen einer SqlColumnMasterKeySettings-Instanz mit automatisch signierten Eigenschaften, die Enclaveberechnungen ermöglichen

# 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

Dieser Befehl erstellt ein SqlColumnMasterKeySettings-Objekt , das auf einen Schlüssel in einem Schlüsseltresor verweist und das Ergebnis in der Variablen namens $cmkSettings speichert. Der Schlüssel ermöglicht Enclaveberechnungen. Da der Signaturparameter nicht angegeben ist, berechnet das Cmdlet automatisch die Signatur und füllt die Signature-Eigenschaft des SqlColumnMasterKeySettings-Objekts auf.

In diesem Beispiel wird das Abrufen eines Authentifizierungstokens für Schlüsseltresore in Azure Key Vault und dessen Übergabe an das Cmdlet veranschaulicht.

Beispiel 3: Erstellen eines SqlColumnMasterKeySettings-Objekts, das Enclave-Berechnungen zulässt

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

Dieser Befehl erstellt ein SqlColumnMasterKeySettings-Objekt , das auf einen Schlüssel in einem Schlüsseltresor verweist und das Ergebnis in der Variablen namens $cmkSettings speichert. Der Schlüssel ermöglicht Enclaveberechnungen. Die Signatur der Schlüsseleigenschaften wird im Signature-Parameter angegeben.

Parameter

-AllowEnclaveComputations

Gibt an, ob die Spalte master Schlüssel Enclave-Berechnungen zulässt. Wenn der Parameter angegeben ist, können serverseitige Secure Enclaves Berechnungen für Daten ausführen, die mit dem Spaltenschlüssel master geschützt sind. Ungültig für SQL Server 2017 und ältere Versionen.

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

-KeyUrl

Gibt den Link des Schlüssels in Azure Key Vault oder einem verwalteten HSM als URL an.

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

-KeyVaultAccessToken

Gibt ein Zugriffstoken für Schlüsseltresore in Azure Key Vault an. Verwenden Sie diesen Parameter, wenn die angegebene Spalte master Schlüssel in einem Schlüsseltresor in Azure Key Vault gespeichert ist und das Cmdlet Schlüsselmetadaten signiert.

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

-ManagedHsmAccessToken

Gibt ein Zugriffstoken für verwaltete HSMs in Azure Key Vault an. Verwenden Sie diesen Parameter, wenn die angegebene Spalte master Schlüssel in einem verwalteten HSM in Azure Key Vault gespeichert ist und das Cmdlet Schlüsselmetadaten signiert.

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

-Signature

Gibt eine hexadezimale Zeichenfolge an, die eine digitale Signatur von Spalten master Schlüsseleigenschaften ist. Ein Clienttreiber kann die Signatur überprüfen, um sicherzustellen, dass die Spalte master Schlüsseleigenschaften nicht manipuliert wurde.

Dieser Parameter ist nur zulässig, wenn AllowEnclaveComputations angegeben ist. Wenn AllowEnclaveComputations angegeben ist, Signatur jedoch nicht, berechnet das Cmdlet automatisch die Signatur und füllt die Signature-Eigenschaft des neuen SqlColumnMasterKeySettings-Objekts auf.

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

Ausgaben

SqlColumnMasterKeySettings