New-SqlCertificateStoreColumnMasterKeySettings
创建引用指定证书的 SqlColumnMasterKeySettings 对象。
语法
New-SqlCertificateStoreColumnMasterKeySettings
[-CertificateStoreLocation] <String>
[-Thumbprint] <String>
[[-Signature] <String>]
[-AllowEnclaveComputations]
[-ProgressAction <ActionPreference>]
[<CommonParameters>]
说明
New-SqlCertificateStoreColumnMasterKeySettings cmdlet 创建一个 SqlColumnMasterKeySettings 对象,该对象引用存储在 Windows 证书存储中存储的指定证书,该对象旨在用作 Always Encrypted 功能的列主密钥。
Module requirements: version 21+ on PowerShell 5.1; version 22+ on PowerShell 7.x.
示例
示例 1:创建引用证书的 SqlColumnMasterKeySettings 对象
PS C:\> $CMKSettings = New-SqlCertificateStoreColumnMasterKeySettings -CertificateStoreLocation "CurrentUser" -CertificateThumbprint "f2260f28d909d21c642a3d8e0b45a830e79a1420"
此命令在 Windows 证书存储中创建引用证书的 SqlColumnMasterKeySettings 对象。
示例 2:使用自动签名属性创建引用已启用 enclave 的证书的 SqlColumnMasterKeySettings 对象
PS C:\>$CMKSettings = New-SqlCertificateStoreColumnMasterKeySettings -CertificateStoreLocation "CurrentUser" -CertificateThumbprint "f2260f28d909d21c642a3d8e0b45a830e79a1420" -AllowEnclaveComputations
此命令在 Windows 证书存储中创建 SqlColumnMasterKeySettings 对象,该对象引用允许 enclave 计算的证书。 由于未指定 Signature,因此 cmdlet 会自动计算签名,并填充 SqlColumnMasterKeySettings 对象的 Signature 属性。
示例 3:创建引用已启用 enclave 的证书的 SqlColumnMasterKeySettings 对象
PS C:\>$CMKSettings = New-SqlCertificateStoreColumnMasterKeySettings -CertificateStoreLocation "CurrentUser" -CertificateThumbprint "f2260f28d909d21c642a3d8e0b45a830e79a1420" -AllowEnclaveComputations -Signature "0x19BEB4F27F582FDBBD0C7E5F92CF161D79D5E7F5A5183F9C8E710252E7028A3654FBEAF834EE45925024F1A32BD3C6D7D92B46E38690830E20E0777607B073E6665EB05E39263C02557D1208ACECB2251A108D0DEFC25232B67FD223C590258C817292FAFCE2388507812D64A0AEC9E546B0B8E4B2F3EA436053CB158F3CF478C5F5EDA511D0F752F60C3B129BF21356A93368FCC7FD6FAA8DB4E919EB551F375181CA3F4D0404A811C99BD2C8D10C0003AC12B138371F2D76611768B4E84D44116C42F00D679B36D41FBD9467B58291B1F4348C7B422793DA0614EF980CA0A7F42B6D627AFA5A753F0869D2C2F9B0FD38289D5433CE9266C6F867334654BE12"
此命令在 Windows 证书存储中创建 SqlColumnMasterKeySettings 对象,该对象引用允许 enclave 计算的证书。 证书属性的签名在 Signature 参数中指定。
参数
-AllowEnclaveComputations
指定列主密钥是否允许 enclave 计算。 如果指定了参数,则允许服务器端安全 enclave 对使用列主密钥保护的数据执行计算。 对 SQL Server 2017 和更早版本无效。
类型: | SwitchParameter |
Position: | 2 |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-CertificateStoreLocation
指定包含证书的证书存储位置。 此参数的可接受值为:
- CurrentUser
- LocalMachine
类型: | String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ProgressAction
确定 PowerShell 如何响应脚本、cmdlet 或提供程序生成的进度更新,例如由 Write-Progress cmdlet 生成的进度栏。 Write-Progress cmdlet 创建显示命令状态的进度栏。
类型: | ActionPreference |
别名: | proga |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Signature
指定十六进制字符串,该字符串是列主密钥属性的数字签名。 客户端驱动程序可以验证签名,以确保列主密钥属性未被篡改。 仅当 指定 AllowEnclaveComputations 时,才允许此参数。 如果指定 了 allowEnclaveComputations,但 Signature 不是,则 cmdlet 会自动计算签名并填充新 SqlColumnMasterKeySettings 对象的 Signature 属性。
类型: | String |
Position: | 3 |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Thumbprint
指定证书的指纹。
类型: | String |
Position: | 1 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
输出
SqlColumnMasterKeySettings