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]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
Beschreibung
Erstellt ein SqlColumnMasterKeySettings -Objekt, das einen Spaltenmasterschlü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üsseltresor 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'
Mit diesem Befehl wird ein SqlColumnMasterKeySettings -Objekt erstellt, das auf einen Schlüssel in Azure Key Vault verweist und das Ergebnis in der Variablen mit dem Namen $CMKSettings
Beispiel 2: Erstellen eines SqlColumnMasterKeySettings mit automatisch signierten Eigenschaften, die Enklavenberechnungen 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
Mit diesem Befehl wird ein SqlColumnMasterKeySettings--Objekt erstellt, das auf einen Schlüssel in einem Schlüsseltresor verweist und das Ergebnis in der Variablen namens $cmkSettings speichert. Der Schlüssel ermöglicht Enklavenberechnungen. 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üsseltresor in Azure Key Vault veranschaulicht und an das Cmdlet übergeben.
Beispiel 3: Erstellen eines SqlColumnMasterKeySettings-Objekts, das Enklavenberechnungen 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
Mit diesem Befehl wird ein SqlColumnMasterKeySettings--Objekt erstellt, das auf einen Schlüssel in einem Schlüsseltresor verweist und das Ergebnis in der Variablen namens $cmkSettings speichert. Der Schlüssel ermöglicht Enklavenberechnungen. Die Signatur der Schlüsseleigenschaften wird im parameter Signature angegeben.
Parameter
-AllowEnclaveComputations
Gibt an, ob der Spaltenmasterschlüssel Enklavenberechnungen zulässt. Wenn der Parameter angegeben ist, können serverseitige sichere Enklaven Berechnungen für daten ausführen, die mit dem Spaltenmasterschlüssel geschützt sind. Ungültig für SQL Server 2017 und ältere Versionen.
Typ: | SwitchParameter |
Position: | 1 |
Standardwert: | False |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-KeyUrl
Gibt den Link als URL des Schlüssels im Azure Key Vault oder einem verwalteten HSM an.
Typ: | String |
Position: | 0 |
Standardwert: | None |
Erforderlich: | True |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-KeyVaultAccessToken
Gibt ein Zugriffstoken für Schlüsseltresor in Azure Key Vault an. Verwenden Sie diesen Parameter, wenn der angegebene Spaltenmasterschlüssel in einem Schlüsseltresor in Azure Key Vault gespeichert ist und das Cmdlet Schlüsselmetadaten signieren soll.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ManagedHsmAccessToken
Gibt ein Zugriffstoken für verwaltete HSMs im Azure Key Vault an. Verwenden Sie diesen Parameter, wenn der angegebene Spaltenmasterschlüssel in einem verwalteten HSM im Azure Key Vault gespeichert ist und das Cmdlet Schlüsselmetadaten signieren soll.
Typ: | String |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-ProgressAction
Bestimmt, wie PowerShell auf Statusaktualisierungen reagiert, die von einem Skript, Cmdlet oder Anbieter generiert werden, z. B. auf die Statusanzeigen, die vom Cmdlet Write-Progress generiert werden. Das Cmdlet Write-Progress erstellt Statusanzeigen, die den Status eines Befehls anzeigen.
Typ: | ActionPreference |
Aliase: | proga |
Position: | Named |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
-Signature
Gibt eine hexadezimale Zeichenfolge an, die eine digitale Signatur von Spaltenmasterschlüsseleigenschaften ist. Ein Clienttreiber kann die Signatur überprüfen, um sicherzustellen, dass die Eigenschaften des Spaltenmasterschlüssels nicht manipuliert wurden.
Dieser Parameter ist nur zulässig, wenn AllowEnclaveComputations angegeben ist. Wenn AllowEnclaveComputations- angegeben ist, aber Signatur- nicht, berechnet das Cmdlet automatisch die Signatur und füllt die Signature-Eigenschaft des neuen SqlColumnMasterKeySettings-Objekt auf.
Typ: | String |
Position: | 2 |
Standardwert: | None |
Erforderlich: | False |
Pipelineeingabe akzeptieren: | False |
Platzhalterzeichen akzeptieren: | False |
Ausgaben
SqlColumnMasterKeySettings