共用方式為


Complete-SqlColumnMasterKeyRotation

完成數據行主要金鑰的輪替。

語法

ByObject

Complete-SqlColumnMasterKeyRotation
    [-InputObject] <Database>
    -SourceColumnMasterKeyName <String>
    [-Script]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [<CommonParameters>]

ByPath

Complete-SqlColumnMasterKeyRotation
    [[-Path] <String>]
    -SourceColumnMasterKeyName <String>
    [-Script]
    [-AccessToken <PSObject>]
    [-TrustServerCertificate]
    [-HostNameInCertificate <String>]
    [-Encrypt <String>]
    [<CommonParameters>]

Description

Complete-SqlColumnMasterKeyRotation Cmdlet 會完成使用 Always Encrypted 功能的新目標數據行主要密鑰取代現有數據行主要密鑰的程式。

Cmdlet 會取得所有數據行加密密鑰物件,其中包含使用指定之源數據行主要金鑰加密的加密金鑰值。

接著,Cmdlet 會更新每個資料行加密金鑰物件,以移除使用指定資料行主要金鑰所產生的加密值專案。

因此,每個受影響的數據行加密密鑰物件只會有一個加密的值專案,使用輪替目標的數據行主要密鑰產生。

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

範例

範例 1:完成輪替數據行主要密鑰的程式

PS C:\> Cleanup-SqlColumnMasterKey -SourceColumnMasterKeyName "CMK1"

此命令會完成輪替名為 CMK1 的數據行主要金鑰程式。

參數

-AccessToken

用來向 SQL Server 驗證的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。

例如,這可用來連線到 SQL Azure DBSQL Azure Managed Instance 或 。 Service PrincipalManaged Identity

要使用的參數可以是字串,表示令牌或 PSAccessToken 物件,如執行 Get-AzAccessToken -ResourceUrl https://database.windows.net所傳回。

此參數是模組 v22 的新功能。

參數屬性

類型:PSObject
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Encrypt

線上到 SQL Server 時要使用的加密類型。

此值會對應至 Encrypt Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 屬性 SqlConnectionEncryptOption

在模組的 v22 中,預設值為 Optional (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 「強制」,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

參數屬性

類型:String
預設值:None
接受的值:Mandatory, Optional, Strict
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-HostNameInCertificate

用於驗證 SQL Server TLS/SSL 憑證的主機名稱。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整功能變數名稱 (FQDN) 傳遞至 -ServerInstance 才能連線到啟用強制加密的 SQL Server 實例。

此參數是模組 v22 的新功能。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-InputObject

指定此 Cmdlet 執行作業的 SQL 資料庫物件。

參數屬性

類型:Database
預設值:None
支援萬用字元:False
不要顯示:False

參數集

ByObject
Position:1
必要:True
來自管線的值:True
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Path

指定此 Cmdlet 執行作業的 SQL 資料庫路徑。 如果您未指定 參數的值,Cmdlet 會使用目前的工作位置。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

ByPath
Position:1
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-Script

指出此 Cmdlet 會執行腳本,以完成數據行主要密鑰的輪替。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-SourceColumnMasterKeyName

指定源資料列主要金鑰的名稱。

參數屬性

類型:String
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:True
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

-TrustServerCertificate

指出通道是否會在略過憑證鏈結以驗證信任時加密。

在模組的 v22 中,預設值為 $true (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

參數屬性

類型:SwitchParameter
預設值:None
支援萬用字元:False
不要顯示:False

參數集

(All)
Position:Named
必要:False
來自管線的值:False
來自管線按屬性名稱的值:False
來自剩餘引數的值:False

CommonParameters

此 Cmdlet 支援一般參數:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters

輸入

Microsoft.SqlServer.Management.Smo.Database

輸出

System.Object