Import-ExchangeCertificate
內部部署 Exchange 才有提供此 Cmdlet。
使用 Import-ExchangeCertificate Cmdlet 匯入 Exchange 伺服器上的憑證。 您可以使用此 Cmdlet 來安裝從其他伺服器匯出的憑證,以及完成擱置的憑證要求, (也稱為證書簽署要求或 CSR) 憑證授權單位單位 (CA) 。
如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法。
語法
Import-ExchangeCertificate
-FileData <Byte[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Import-ExchangeCertificate
-Instance <String[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Import-ExchangeCertificate
-FileName <String>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Description
您可以使用 Import-ExchangeCertificate Cmdlet 在 Exchange 伺服器上匯入下列類型的憑證檔案:
- 憑證授權單位單位 (CA) 所發行的 APKCS #7 憑證或憑證檔案鏈結 (.p7b 或 .p7c) 。 PKCS #7 是密碼編譯訊息語法標準,這是一種使用公開金鑰密碼編譯進行數位簽署或加密資料的語法,包括憑證。 如需詳細資訊,請 參閱 PKCS #7 密碼編譯傳訊語法概念。
- 包含私密金鑰的 PKCS #12 憑證檔案 (.cer、.crt、.der、.p12 或 .pfx) 。 PKCS #12 是個人資訊交換語法標準,這是一種檔案格式,用來儲存具有密碼保護之對應私密金鑰的憑證。 如需詳細資訊,請 參閱 PKCS #12:個人資訊交換語法 v1.1。
在 Exchange 伺服器上匯入憑證之後,您必須使用 Enable-ExchangeCertificate Cmdlet 將憑證指派給一或多個 Exchange 服務。
設定傳輸層安全性 (TLS) 和安全通訊端層 (SSL) 服務的憑證時,必須考量許多因素。 您需要了解這些因素會如何影響整體組態。 如需詳細資訊,請參閱Exchange Server 中的數位憑證和加密。
安全通訊端層 (SSL) 是以傳輸層安全性 (TLS) 取代,做為用來加密電腦系統之間傳送的資料的通訊協定。 它們密切相關,以至於 "SSL" 和 "TLS" (不含版本) 術語經常交換使用。 由於這種相似性,Exchange 主題中對 「SSL」 的參考、Exchange 系統管理中心和 Exchange 管理命令介面通常用來同時包含 SSL 和 TLS 通訊協定。 通常,僅當也提供版本 (例如,SSL 3.0) 時,"SSL" 才是指實際的 SSL 通訊協定。 如需詳細資訊,請參閱Exchange Server TLS 設定最佳做法。
您必須已獲指派權限,才能執行此指令程式。 雖然本主題已列出這個指令程式的所有參數,不過,如果某些參數並未包含在指派給您的權限中,您可能就無法存取這些參數。 若要尋找在組織中執行任何 Cmdlet 或參數所需的權限,請參閱 Find the permissions required to run any Exchange cmdlet。
範例
範例 1
Import-ExchangeCertificate -Server Mailbox01 -FileName "\\FileServer01\Data\Exported Fabrikam Cert.pfx" -Password (Get-Credential).password
在 Exchange 2013中,此範例會將憑證從 \\FileServer01\Data\Exported Fabrikam Cert.pfx 的 PKCS #12 檔案匯入至名為 Mailbox01 的 Exchange 伺服器。 此檔案需要檔案的密碼。 此憑證可能已從另一部伺服器匯出,或由憑證授權單位單位發行。
若要在 Exchange 2016 或 Exchange 2019 中匯出憑證,請使用 FileData 參數,如範例 2 所述。
範例 2
Import-ExchangeCertificate -Server Mailbox01 -FileData ([System.IO.File]::ReadAllBytes('\\FileServer01\Data\Exported Fabrikam Cert.pfx')) -Password (Get-Credential).password
本範例會從範例 1 匯入相同的憑證檔案。 Exchange 2016 和 Exchange 2019 中需要這個方法,因為 FileName 參數無法使用。
範例 3
Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('C:\Certificates\Fabrikam IssuedCert.p7b'))
此範例會從本機 Exchange 伺服器上的 PKCS #7 檔案 C:\Certificates\Fabrikam IssuedCert.p7b 匯入憑證鏈結。
參數
-Confirm
Confirm 參數會指定要顯示或隱藏確認提示。 這個參數對 Cmdlet 的影響取決於 Cmdlet 是否需要確認才能繼續作業。
- 例如,具破壞性的 Cmdlet (例如 Remove-* Cmdlet) 內建暫停,可強制您在繼續之前確認命令。 對於這些 Cmdlet,您可以使用以下確切語法來略過確認提示:
-Confirm:$false
。 - 其他大部分的 Cmdlet (例如,New-* 和 Set-* Cmdlet) 沒有內建暫停。 在使用這些 Cmdlet 時,指定不含任何值的 Confirm 參數會引入強迫您認可命令後才繼續作業的暫停。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-DomainController
DomainController 參數會指定此 Cmdlet 用來向 Active Directory 讀取或寫入資料的網域控制站。 您可以透過網域控制站的完整網域名稱 (FQDN) 來識別網域控制站。 例如,dc01.contoso.com。
Edge Transport Server 不支援 DomainController 參數。 Edge Transport Server 會使用 Active Directory 輕量型目錄服務 (AD LDS) 的本機執行個體來讀寫資料。
類型: | Fqdn |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-FileData
FileData 參數會指定您要匯入的憑證檔案內容。
此參數的有效值需要您使用下列語法,將檔案讀取至位元組編碼的物件: ([System.IO.File]::ReadAllBytes('<Path>\<FileName>'))
。 您可以使用此命令作為參數值,也可以將輸出寫入變數 () $data = [System.IO.File]::ReadAllBytes('<Path>\<FileName>')
,並使用 變數作為參數值 () $data
。
如果憑證檔案位於您執行命令的 Exchange 伺服器上,而且這是您要安裝憑證的相同伺服器,您可以使用本機路徑。 否則,請使用 UNC 路徑 (\\Server\Share
) 。
當您使用此參數匯入 PKCS #7 文本證書檔案時,這些檔案包含:-----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE----- 或 -----BEGIN PKCS7----- 和 -----END PKCS7----- 且副檔名為 .p7b 或 .p7c。
如果值包含空格,請使用引號 (") 括住值。
類型: | Byte[] |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-FileName
注意:2022 H1 累積更新已從 Exchange 2016 和 Exchange 2019移除此參數,因為它接受 UNC 路徑值。 若要匯入憑證檔案而不使用 FileName 參數,請使用 FileData 參數。
此參數僅適用于 Exchange 2013。
FileName 參數會指定您要匯入的憑證檔案。 一般而言,您會將此參數用於副檔名為 .cer、.crt、.der、.p12 或 .pfx 的 PKCS #12 二進位憑證檔案。 當檔案包含私密金鑰或信任鏈結時,此類型的二進位憑證檔案會受到密碼保護。
如果憑證檔案位於您執行命令的 Exchange 伺服器上,而且這是您要安裝憑證的相同伺服器,您可以使用本機路徑。 否則,請使用 UNC 路徑 (\\Server\Share
) 。
如果值包含空格,請使用引號 (") 括住值。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2013 |
-FriendlyName
FriendlyName 參數會指定憑證的易記名稱。 值必須小於 64 個字元。
易記名稱值是描述性文字,不會影響憑證的功能。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Instance
此參數已過時,不再使用。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Password
Password 參數會指定匯入憑證所需的密碼。
您可以使用下列方法作為此參數的值:
-
(ConvertTo-SecureString -String '<password>' -AsPlainText -Force)
. - 執行此命令之前,請先將密碼儲存為變數 (例如
$password = Read-Host "Enter password" -AsSecureString
,) ,然後使用變數 ($password
) 值。 -
(Get-Credential).password
當您執行此命令時,系統會提示您安全地輸入密碼。
類型: | SecureString |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-PrivateKeyExportable
PrivateKeyExportable 參數會指定憑證是否具有可匯出的私密金鑰,並控制您是否可以從此伺服器匯出憑證。 有效值為:
- $true:私密金鑰可匯出,因此您可以從此伺服器匯出憑證。
- $false:私密金鑰無法匯出,因此您無法從此伺服器匯出憑證。 這是預設值。
類型: | Boolean |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-Server
Server 參數指定您要執行此命令的 Exchange 伺服器。 您可以使用唯一識別伺服器的任何值。 例如:
- Name
- FQDN
- 辨別名稱 (DN)
- Exchange Legacy DN
Exchange Legacy DN
類型: | ServerIdParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
-WhatIf
WhatIf 參數會模擬命令的動作。 使用此參數時,您不需要實際套用變更即可檢視可能會發生的變更。 您不需要使用此參數指定值。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
適用於: | Exchange Server 2010, Exchange Server 2013, Exchange Server 2016, Exchange Server 2019 |
輸入
Input types
若要查看此指令程式可接受的輸入類型,請參閱指令程式輸入和輸出類型。 如果指令程式的 [輸入類型] 欄位是空的,表示指令程式不接受輸入資料。
輸出
Output types
若要查看此指令程式可接受的傳回類型 (也就是所謂的輸出類型),請參閱指令程式輸入和輸出類型。 如果 [輸出類型] 欄位是空的,表示指令程式不會傳回資料。