dotnet dev-certs https
[-c|--check] [--clean] [-ep|--export-path <PATH>]
[--format] [-i|--import] [-np|--no-password]
[-p|--password] [-q|--quiet] [-t|--trust]
[-v|--verbose] [--version]
dotnet dev-certs https -h|--help
dotnet dev-certs
命令會管理自我簽署憑證,以在本機 Web 應用程式開發中使用 HTTPS。 其主要功能包括:
產生憑證,以在開發期間用於 HTTPS 端點。
在本機電腦信任產生的憑證。
從本機電腦移除產生的憑證。
以各種格式匯出憑證,以供其他工具使用。
將工具產生的現有憑證匯入本機電腦。
https
dotnet dev-certs
只有一個命令:https
。 沒有選項的 dotnet dev-certs https
命令會檢查電腦上目前使用者的憑證存放區中是否有開發憑證。 如果命令找到開發憑證,則會顯示類似下列範例的訊息:
A valid HTTPS certificate is already present.
如果命令找不到開發憑證,則會在目前使用者的憑證存放區中建立一個。該存放區名為 My
,位於 CurrentUser
。 憑證的實體位置是 .NET 執行階段的實作詳細資料,可以隨時變更。 在 macOS 上的 .NET 7.0 中,憑證會儲存在使用者金鑰鏈中,並以 PFX 檔案的形式儲存:~/.aspnet/https-aspnetcore-localhost-<Thumbprint[0..5]>.pfx。
建立憑證之後,命令會顯示類似下列範例的訊息:
The HTTPS developer certificate was generated successfully.
根據預設,新建立的憑證不受信任。 若要信任憑證,請使用 --trust
選項。
若要建立可用於其他工具的檔案,請使用 --export-path
選項。
-c|--check
檢查開發憑證是否存在,但不會執行任何動作。 使用此選項搭配 --trust
選項,以檢查憑證是否不只有效,還受信任。
--clean
使用 .NET 憑證存放區 API,從憑證存放區移除所有 HTTPS 開發憑證。 不會移除使用 --export-path
選項建立的任何實體檔案。 在 macOS 上的 .NET 7.0 中,dotnet dev-certs
命令會在磁碟上的路徑建立憑證,而清除作業會移除該憑證檔案。
如果憑證存放區中至少有一個憑證,命令會顯示類似下列範例的訊息:
Cleaning HTTPS development certificates
from the machine.
A prompt might get displayed to confirm
the removal of some of the certificates.
HTTPS development certificates
successfully removed from the machine.
-ep|--export-path <PATH>
將憑證匯出至檔案,以供其他工具使用。 指定匯出之憑證檔案的完整路徑,包括檔案名稱。 建立的憑證檔案類型,取決於用在 --export-path
的選項:
匯出的內容
--export-path --password --format PEM
以 PEM 格式的一組檔案,匯出憑證的公開和私密部分。 金鑰檔案的副檔名會是 .key,並受到指定密碼的保護。
--export-path --no-password --format PEM
以 PEM 格式的一組檔案,匯出憑證的公開和私密部分。 金鑰檔案的副檔名會是 .key,並以純文字匯出。 --no-password
僅供內部測試使用。
搭配 --export-path
使用時,指定匯出的憑證檔案格式。 有效值為 PFX
和 PEM
,不區分大小寫。 PFX
是預設值。
檔案格式與副檔名無關。 例如,如果您指定 --format pfx
和 --export-path ./cert.pem
,則會取得名為 cert.pem、格式為 PFX
的檔案。
如需相關資訊,以了解搭配 --password
、--no-password
使用此選項,或不使用其中一個選項時的效果,請參閱本文稍早的 --export-path。
-i|--import <PATH>
將提供的 HTTPS 開發憑證匯入本機電腦。 您也必須指定 --clean
選項,以清除任何現有的 HTTPS 開發人員憑證。
PATH
會指定 PFX 憑證檔案的路徑。 請使用 --password
選項提供密碼。
-np|--no-password
將憑證匯出為 PEM 格式檔案時,不會使用金鑰的密碼。 金鑰檔案會以純文字匯出。 此選項不適用於 PFX 檔案,僅供內部測試使用。
-p|--password
指定要使用的密碼:
將開發憑證匯出為 PFX 或 PEM 檔案時。
匯入 PFX 檔案時。
使用 --format PEM
匯出時,憑證的公開和私密部分會匯出為 PEM 格式的一組檔案。 金鑰檔案的副檔名會是 .key,並受到指定密碼的保護。 除了為 --export-path
選項指定的檔案名稱之外,命令還會在相同目錄中建立另一個名稱相同、但副檔名為 .key 的檔案。 例如,下列命令會在 /home/user 目錄中,產生一個名為 localhost.pem 的檔案,和一個名為 localhost.key 的檔案:
dotnet dev-certs https --format pem -ep /home/user/localhost.pem -p $CREDENTIAL_PLACEHOLDER$
在範例中,$CREDENTIAL_PLACEHOLDER$
代表密碼。
-q|--quiet
僅顯示警告和錯誤。
-t|--trust
在本機電腦上信任憑證。
如果未指定此選項,憑證雖然會新增至憑證存放區,但不會新增至信任的清單。
與 --check
選項結合時,會驗證憑證是否受信任。
-v|--verbose
顯示偵錯資訊。
檢查開發憑證是否存在;如果沒有,則在預設憑證存放區中建立一個。 但不會信任憑證。
dotnet dev-certs https
移除本機電腦上已經存在的任何開發憑證。
dotnet dev-certs https --clean
匯入 PFX 檔案。
dotnet dev-certs https --clean --import ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$
在上述範例中,$CREDENTIAL_PLACEHOLDER$
代表密碼。
檢查本機電腦上是否有信任的開發憑證。
dotnet dev-certs https --check --trust
建立並信任憑證,然後匯出至 PFX 檔案。
dotnet dev-certs https -ep ./certificate.pfx -p $CREDENTIAL_PLACEHOLDER$ --trust
建立並信任憑證,然後匯出至 PEM 檔案。
dotnet dev-certs https -ep ./certificate.crt --trust --format PEM
建立並信任憑證,然後匯出至 PEM 檔案,包括私密金鑰:
dotnet dev-certs https -ep ./certificate.crt -p $CREDENTIAL_PLACEHOLDER$ --trust --format PEM
使用 .NET CLI 產生自我簽署憑證
在 ASP.NET Core 中強制執行 HTTPS
針對憑證問題進行疑難排解,例如憑證不受信任
透過 HTTPS 使用 Docker 裝載 ASP.NET Core 映像
透過 HTTPS 使用 Docker Compose 裝載 ASP.NET Core 映像
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:https://aka.ms/ContentUserFeedback。
提交並檢視相關的意見反應