Import-ExchangeCertificate
內部部署 Exchange 才有提供此 Cmdlet。
使用 Import-ExchangeCertificate Cmdlet 在 Exchange 伺服器上匯入憑證。 您可以使用這個 Cmdlet 來安裝從其他伺服器匯出的憑證,以及完成擱置中的憑證要求 (也稱為憑證簽章要求,或來自憑證授權單位 (CA) ) 的 CSR。
如需下方<語法>一節中參數集的詳細資訊,請參閱 Exchange Cmdlet 語法。
語法
FileData
Import-ExchangeCertificate
-FileData <Byte[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
FileName
Import-ExchangeCertificate
-Instance <String[]>
[-Confirm]
[-DomainController <Fqdn>]
[-FriendlyName <String>]
[-Password <SecureString>]
[-PrivateKeyExportable <Boolean>]
[-Server <ServerIdParameter>]
[-WhatIf]
[<CommonParameters>]
Instance
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 是 Cryptographic Message Syntax Standard,是一種用於使用公開金鑰加密法對資料進行數位簽署或加密的語法,包括憑證。 如需詳細資訊,請參閱 PKCS #7 密碼編譯訊息語法概念。
- PKCS #12 憑證檔案 (.cer、.crt、.der、.p12 或包含私密金鑰的 .pfx) 。 PKCS #12 是個人資訊交換語法Standard,是一種檔案格式,用來儲存具有受密碼保護之對應私密金鑰的憑證。 如需詳細資訊,請參閱 PKCS #12:個人資訊交換語法 v1.1。
在 Exchange 伺服器上匯入憑證之後,您必須使用 Enable-ExchangeCertificate Cmdlet 將憑證指派給一或多個 Exchange 服務。
設定傳輸層安全性 (TLS) 服務的憑證時,需要考慮許多因素。 您需要了解這些因素會如何影響整體組態。 如需詳細資訊,請參閱 Exchange Server 中的數位憑證和加密。
TLS 取代了 Secure Sockets Layer (SSL) ,成為用來加密電腦系統之間傳送資料的通訊協定。 過去,「TLS」和「SSL」經常互換使用。 Exchange 文件中對 SSL 的任何引用實際上意味著 TLS,除非還包括版本號 (例如 SSL 3.0) 。 如需詳細資訊,請參閱 Exchange Server TLS 設定最佳做法。
您必須已獲指派權限,才能執行此指令程式。 雖然本文列出 Cmdlet 的所有參數,但如果指派給您的權限中未包含某些參數,您可能無法存取這些參數。 若要尋找在組織中執行任何 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 中,此範例會將 PKCS #12 檔案中的憑證從 \\FileServer01\Data\Exported Fabrikam Cert.pfx 匯入至名為 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
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
Confirm 參數會指定要顯示或隱藏確認提示。 此參數對 Cmdlet 的影響取決於 Cmdlet 是否需要確認才能繼續。
- 破壞性的 Cmdlet (如 Remove-* cmdlets) 有內建暫停,它會先強迫您確認命令才會繼續作業。 對於這些 Cmdlet,您可以使用以下確切語法來略過確認提示:
-Confirm:$false。 - 其他大部分的 Cmdlet (如 New-* 和 Set-* cmdlets) 則沒有內建暫停。 針對這些 Cmdlet,指定不帶值的 Confirm 參數會造成暫停,強制您在繼續之前先確認命令。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | CF |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-DomainController
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
DomainController 參數會指定此 Cmdlet 用來向 Active Directory 讀取或寫入資料的網域控制站。 您可以透過網域控制站的完整網域名稱 (FQDN) 來識別網域控制站。 例如,dc01.contoso.com。
Edge Transport Server 不支援 DomainController 參數。 Edge Transport Server 會使用 Active Directory 輕量型目錄服務 (AD LDS) 的本機執行個體來讀寫資料。
參數屬性
| 類型: | Fqdn |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-FileData
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
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[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
FileData
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-FileName
適用:Exchange Server 2013
注意:此參數已於 2022 H1 累積匯報中從 Exchange 2016 和 Exchange 2019 中移除,因為它接受 UNC 路徑值。 若要匯入憑證檔案而不使用 FileName 參數,請使用 FileData 參數。
此參數僅適用於 Exchange 2013。
FileName 參數會指定您要匯入的憑證檔案。 通常,此參數適用於副檔名為 .cer、.crt、.der、.p12 或 .pfx 的 PKCS #12 二進位憑證檔案。 當檔案包含私密金鑰或信任鏈時,這種類型的二進位憑證檔案會以密碼保護。
如果憑證檔案位於執行命令的 Exchange 伺服器上,且此伺服器與您要安裝憑證的伺服器相同,則可以使用本機路徑。 否則,請使用 UNC 路徑 (\\Server\Share) 。
如果值包含空格,請使用引號 (") 括住值。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
Instance
| Position: | Named |
| 必要: | True |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-FriendlyName
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
FriendlyName 參數會指定憑證的易記名稱。 值必須小於 64 個字元。
易記名稱值為描述性文字,不會影響憑證的功能。
參數屬性
| 類型: | String |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Instance
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
此參數已棄用,不再使用。
參數屬性
| 類型: | String[] |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
FileName
| Position: | Named |
| 必要: | True |
| 來自管線的值: | True |
| 來自管線按屬性名稱的值: | True |
| 來自剩餘引數的值: | False |
-Password
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
Password 參數會指定匯入憑證所需的密碼。
您可以使用下列方法做為此參數的值:
-
(ConvertTo-SecureString -String '<password>' -AsPlainText -Force). - 在執行此命令之前,請將密碼儲存為變數 (
$password = Read-Host "Enter password" -AsSecureString例如) ,然後使用變數 ($password) 作為值。 -
(Get-Credential).password執行此命令時,系統會提示您安全地輸入密碼。
參數屬性
| 類型: | SecureString |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-PrivateKeyExportable
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
PrivateKeyExportable 參數會指定憑證是否具有可匯出的私密金鑰,並控制您是否可以從此伺服器匯出憑證。 有效值為:
- $true:私密金鑰是可匯出的,因此您可以從此伺服器匯出憑證。
- $false:私密金鑰無法匯出,因此您無法從此伺服器匯出憑證。 此值為預設值。
參數屬性
| 類型: | Boolean |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-Server
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
Server 參數指定您要執行此命令的 Exchange 伺服器。 您可以使用唯一識別伺服器的任何值。 例如:
- Name
- FQDN
- 辨別名稱 (DN)
- Exchange Legacy DN
Exchange Legacy DN
參數屬性
| 類型: | ServerIdParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
-WhatIf
適用項目:Exchange Server 2010、Exchange Server 2013、Exchange Server 2016、Exchange Server 2019、Exchange Server SE
WhatIf 參數會顯示命令在不進行任何變更的情況下執行的動作。 您不需要使用此參數指定值。
參數屬性
| 類型: | SwitchParameter |
| 預設值: | None |
| 支援萬用字元: | False |
| 不要顯示: | False |
| 別名: | WI |
參數集
(All)
| Position: | Named |
| 必要: | False |
| 來自管線的值: | False |
| 來自管線按屬性名稱的值: | False |
| 來自剩餘引數的值: | False |
CommonParameters
此 Cmdlet 支援常見參數: -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 如需詳細資訊,請參閱 about_CommonParameters。
輸入
Input types
若要查看此指令程式可接受的輸入類型,請參閱指令程式輸入和輸出類型。 如果指令程式的 [輸入類型] 欄位是空的,表示指令程式不接受輸入資料。
輸出
Output types
若要查看此指令程式可接受的傳回類型 (也就是所謂的輸出類型),請參閱指令程式輸入和輸出類型。 如果 [輸出類型] 欄位是空的,表示指令程式不會傳回資料。