摘要
從 Microsoft Exchange Server 的 SU) (2023 年 1 月安全性更新開始,我們推出了一項新功能,可讓系統管理員設定以憑證為基礎的 PowerShell 序列化承載簽署。 在所有 Exchange 伺服器上安裝 SU 之後,Exchange Server管理員必須手動啟用此功能。 本文提供在 Exchange Server 中啟用以憑證為基礎的 PowerShell 序號資料簽署的步驟。
必要條件
啟用此功能的必要條件:
-
請確定您環境中的所有 Exchange 伺服器都已安裝 2023 年 1 月 SU 或更新版本的 SU。 如果您在更新所有伺服器之前啟用此功能,可能會發生取消程式化失敗並觸發其他問題。
-
請確認已設定有效的Exchange Server驗證憑證,而且在啟用憑證簽署之前) 之後,所有 Exchange 型伺服器 (都可使用。
您可以執行 MonitorExchangeAuthCertificate.ps1 腳本,以檢查您環境中 Exchange 基礎伺服器上是否有有效的驗證憑證。 腳本也會檢查驗證憑證是否要在 60 天內過期,而且可以協助您旋轉憑證。 如需 MonitorExchangeAuthCertificate.ps1的詳細資訊,請參閱監控 Exchange AuthCertificate
若要手動檢查驗證憑證的可用性和有效性,請參閱驗證憑證可用性和有效性。
我們強烈建議您使用 MonitorExchangeAuthCertificate.ps1 腳本 (或在必要時建立新腳本) 。 這是因為腳本也可以更新過期的驗證憑證。 腳本包含手動執行模式 (確認驗證憑證可用性,或視需要驗證憑證可用性並採取行動) 。 腳本也包含使用 Windows 工作排程器的自動化模式。
解決方案
對於執行 Exchange Server 2019 或 Exchange Server 2016 的伺服器, (更新為 2023 年 1 月 SU 或更新版本)
-
在您環境中執行Exchange Server的伺服器上,在 Exchange 管理命令介面 (EMS) 中執行下列 Cmdlet:
New-SettingOverride -Name "EnableSigningVerification" -Component Data -Section EnableSerializationDataSigning -Parameters @("Enabled=true") -Reason "Enabling Signing Verification"
此 Cmdlet 可讓在您的環境中執行 Exchange Server 2019、2016 或 2013 的所有伺服器,以取得 PowerShell 序列化承載憑證的簽署。 您不需要在每個伺服器上執行 Cmdlet。 -
執行下列 Cmdlet 重新整理VariantConfiguration 自變數:
Get-ExchangeDiagnosticInfo -Process Microsoft.Exchange.Directory.TopologyService -Component VariantConfiguration -Argument Refresh -
若要套用新的設定,請重新啟動 World Wide Web Publishing 服務及 Windows Process Activation Service (WAS)。 若要這麼做,請執行下列 Cmdlet:
Restart-Service -Name W3SVC, WAS -Force附註: 請只在執行設定覆寫 Cmdlet 的Exchange Server型伺服器上重新開機這些服務。
適用于執行 Exchange Server 2013 的伺服器
如果您的環境中有執行 Microsoft Exchange Server 2013 的伺服器,則必須在每個伺服器上設定登錄機碼。 指定下列設定。
登錄機碼:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics
價值:EnableSerializationDataSigning
類型: 字串
資料:1
若要在 Exchange Server 2013 伺服器上建立登錄值,請執行下列 Cmdlet:
- New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics -Name "EnableSerializationDataSigning" -Value 1 -Type String
若要套用新的設定,請重新啟動 World Wide Web Publishing 服務及 Windows Process Activation Service (WAS)。 若要這麼做,請執行下列 Cmdlet:
- Restart-Service -Name W3SVC, WAS -Force
附註: 在您環境中進行登錄變更的所有 Exchange Server 2013 伺服器上重新開機這些服務。
已知問題
-
如果已啟用簽署序列化資料的功能,到期的驗證憑證可防止Get-ExchangeCertificate Cmdlet 傳回憑證詳細資料。
-
安裝 Microsoft Exchange Server 2019、2016 或 2013 的 2023 年 1 月或 2023 年 2 月安全性更新之後,且已啟用 PowerShell 序列化承載憑證簽署,Exchange 工具箱和佇列檢視器不會啟動。 如需詳細資訊,請參閱啟用 PowerShell 序列化憑證簽署之後的 Exchange 工具箱和佇列檢視器失敗 (KB5023352)。
-
如果已啟用簽署序列化資料的功能,Get-ExchangeCertificate Cmdlet 在已安裝 Exchange 管理工具的電腦上執行,但沒有其他Exchange Server角色時,不會傳回可見的值。 不論驗證憑證是否有效,都會發生這種情況。
-
例如,Exchange Server (隨附的部分腳本,如果符合下列條件,RedistributeActiveDatabases.ps1) 無法正常運作:
-
已啟用 PowerShell 序列化承載功能的簽署。
-
您不會使用 Exchange RBAC 提供的預設安全性群組。
-
執行腳本的使用者不是組織管理角色群組的成員。
-