Share via


將現有的自定義網域對應至 Azure Spring Apps

注意

Azure Spring Apps 是 Azure Spring Cloud 服務的新名稱。 雖然服務有新的名稱,但是您暫時還是會在某些位置看到舊的名稱。我們正在致力更新螢幕擷取畫面、影片和圖表等資產。

本文適用於: ✔️ Java ✔️ C#

本文適用於: ✔️ Standard ✔️ Enterprise

功能變數名稱服務 (DNS) 是在整個網路中儲存網路節點名稱的技術。 本文會使用 CNAME 記錄來對應網域,例如 www.contoso.com。 它會使用憑證保護自定義網域,並示範如何強制執行傳輸層安全性 (TLS),也稱為安全套接字層 (SSL)。

憑證會加密 Web 流量。 這些 TLS/SSL 憑證可以儲存在 Azure 金鑰保存庫 中。

必要條件

  • Azure 訂用帳戶。 如果您沒有訂用帳戶,請先建立免費帳戶,再開始操作。
  • (選擇性) Azure CLI 2.45.0 版或更高版本。 使用下列命令來安裝 Azure Spring Apps 擴充功能: az extension add --name spring
  • 部署至 Azure Spring Apps 的應用程式(請參閱快速入門:使用 Azure 入口網站 啟動 Azure Spring Apps 中的現有應用程式,或使用現有的應用程式)。 如果您的應用程式是使用基本方案部署,請務必升級至標準方案。
  • 具有網域提供者 DNS 登錄存取權的功能變數名稱,例如 GoDaddy。
  • 來自第三方提供者的私人憑證(也就是自我簽署憑證)。 憑證必須符合網域。
  • Azure 金鑰保存庫 的已部署實例。 如需詳細資訊,請參閱關於 Azure Key Vault (機器翻譯)。

Azure Spring Apps 管理的 IP 位址尚未屬於 Azure 受信任的 Microsoft 服務。 因此,若要讓 Azure Spring Apps 從受私人端點聯機保護 金鑰保存庫 載入憑證,您必須將下列 IP 位址新增至 Azure 金鑰保存庫 防火牆:

  • 20.99.204.111
  • 20.201.9.97
  • 20.74.97.5
  • 52.235.25.35
  • 20.194.10.0
  • 20.59.204.46
  • 104.214.186.86
  • 52.153.221.222
  • 52.160.137.39
  • 20.39.142.56
  • 20.199.190.222
  • 20.79.64.6
  • 20.211.128.96
  • 52.149.104.144
  • 20.197.121.209
  • 40.119.175.77
  • 20.108.108.22
  • 102.133.143.38
  • 52.226.244.150
  • 20.84.171.169
  • 20.93.48.108
  • 20.75.4.46
  • 20.78.29.213
  • 20.106.86.34
  • 20.193.151.132

匯入憑證

PFX 中準備您的憑證檔案(選擇性)

Azure 金鑰保存庫 支援以 PEM 和 PFX 格式匯入私人憑證。 如果您從憑證提供者取得的 PEM 檔案無法在 [金鑰保存庫 的儲存憑證] 區段中運作,請遵循這裡的步驟來產生適用於 Azure 金鑰保存庫 的 PFX。

合併中繼憑證

如果您的證書頒發機構單位在憑證鏈結中提供多個憑證,您必須依序合併憑證。

若要執行這項工作,請開啟您在文字編輯器中收到的每個憑證。

建立合併憑證的檔案,稱為 mergedcertificate.crt。 在文字編輯器中,將每個憑證的內容複製到此檔案中。 憑證的順序應該遵循憑證鏈結中的順序,從您的憑證開始,並以跟證書結尾。 它看起來像下列範例:

-----BEGIN CERTIFICATE-----
<your entire Base64 encoded SSL certificate>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 1>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 2>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded root certificate>
-----END CERTIFICATE-----

將憑證導出至 PFX

使用憑證要求產生的私鑰,導出合併的 TLS/SSL 憑證。

如果您使用 OpenSSL 產生憑證要求,則您已建立私鑰檔案。 若要將憑證導出至 PFX,請執行下列命令。 將佔位元 private-key-file 和 merged-certificate-file>> 取代為您的私鑰和<合併憑證檔案的路徑。<

openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>

出現提示時,請定義匯出密碼。 稍後將 TLS/SSL 憑證上傳至 Azure 金鑰保存庫 時,請使用此密碼。

如果您使用 IIS 或 Certreq.exe 產生憑證要求,請將憑證安裝至本機計算機,然後將 憑證導出至 PFX

將憑證儲存在 金鑰保存庫

匯入憑證的程式需要 PEM 或 PFX 編碼的檔案位於磁碟上,而且您必須具有私鑰。

使用下列步驟將憑證上傳至金鑰儲存庫:

  1. 移至您的金鑰保存庫實例。

  2. 在瀏覽窗格中,選取 [ 憑證]。

  3. 在上方功能表上,選取 [ 產生/匯入]。

  4. 在 [建立憑證] 頁面上,選取[憑證建立方法匯入],然後提供 [憑證名稱] 的值

  5. 在 [上傳憑證檔案] 底 ,流覽至憑證位置並加以選取。

  6. 在 [密碼] 底下,如果您要上傳受密碼保護的憑證檔案,請在這裡提供該密碼。 否則請留白。 成功匯入憑證檔案之後,密鑰保存庫會移除該密碼。

  7. 選取 建立

    Azure 入口網站 [建立憑證] 對話框的螢幕快照。

授與 Azure Spring Apps 金鑰保存庫的存取權

匯入憑證之前,您必須將密鑰保存庫的存取權授與 Azure Spring Apps。

使用下列步驟,使用 Azure 入口網站 授與存取權:

  1. 移至您的金鑰保存庫實例。
  2. 在瀏覽窗格中,選取 [ 存取原則]。
  3. 在上方功能表上,選取 [ 建立]。
  4. 填入資訊,然後選取 [新增] 按鈕,然後選取 [建立存取原則]。
秘密許可權 憑證權限 選取主體
取得、列出 取得、列出 Azure Spring Apps 網域管理

注意

如果您找不到「Azure Spring Apps 網域管理」,請搜尋「Azure Spring Cloud Domain-Management」。

[Azure 入口網站 新增存取原則] 頁面的螢幕快照,其中已從 [秘密許可權] 和 [憑證許可權] 中選取 [取得和列表]。

[Azure 入口網站 建立存取原則] 頁面的螢幕快照,其中已從 [選取主體] 下拉式清單中選取 [Azure Spring Apps 網域管理]。

將憑證匯入至 Azure Spring Apps

  1. 移至您的 Azure Spring Apps 實例。

  2. 從瀏覽窗格中,選取 [TLS/SSL 設定]。

  3. 選取 [ 匯入金鑰保存庫憑證]。

    顯示 [TLS/SSL 設定] 頁面的 Azure 入口網站 螢幕快照,其中已醒目提示 [匯入密鑰保存庫憑證] 按鈕。

  4. 在 [從 Azure 選取憑證] 頁面上,從下拉式選項選取 [用帳戶]、[金鑰保存庫] 和 [憑證],然後選擇 [選取]。

    顯示 [從 Azure 選取憑證] 頁面之 Azure 入口網站 螢幕快照。

  5. 在開啟的 [設定憑證名稱] 頁面上,輸入您的憑證名稱 ,視需要選取 [ 啟用自動同步 處理],然後選取 [ 套用]。 如需詳細資訊,請參閱 自動同步處理憑證 一節。

    Azure 入口網站 [設定憑證名稱] 對話框的螢幕快照。

  6. 成功匯入憑證時,它會顯示在私鑰憑證清單中

    顯示 [私鑰憑證] 索引標籤 Azure 入口網站 的螢幕快照。

重要

若要使用此憑證保護自定義網域,請務必將憑證系結至特定網域。 如需詳細資訊,請參閱 新增 SSL 系結 一節。

自動同步憑證

儲存在 Azure 金鑰保存庫 中的憑證有時會在到期前更新。 同樣地,貴組織用於憑證管理的安全策略可能需要 DevOps 小組定期以新的憑證取代憑證。 啟用憑證的自動同步處理之後,Azure Spring Apps 會開始定期同步處理新版的密鑰保存庫,通常是每隔 24 小時。 如果有新版本可用,Azure Spring Apps 會匯入它,然後使用憑證為各種元件重載它,而不會造成任何停機時間。 下列清單顯示受影響的元件和相關案例:

當 Azure Spring Apps 匯入或重載憑證時,會產生活動記錄檔。 若要查看活動記錄,請流覽至 Azure 入口網站 中的 Azure Spring Apps 實例,然後在瀏覽窗格中選取 [活動記錄]。

注意

憑證自動同步處理功能適用於從 Azure 金鑰保存庫 匯入的私人憑證和公開憑證。 客戶上傳的內容憑證無法使用此功能。

當您將憑證從金鑰保存庫匯入至 Azure Spring Apps 時,您可以啟用或停用憑證自動同步處理功能。 如需詳細資訊,請參閱 將憑證匯入至 Azure Spring Apps 一節。

您也可以針對已匯入至 Azure Spring Apps 的憑證啟用或停用此功能。

使用下列步驟來啟用或停用匯入憑證的自動同步處理:

  1. 移至私鑰憑證公鑰憑證的清單

  2. 選取 [自動同步處理] 數據行之後的省略號 (...) 按鈕,然後選取 [啟用自動同步] 或 [停用自動同步]。

    Azure 入口網站 的螢幕快照,其中顯示已開啟省略號按鈕功能表的憑證清單,並已選取 [啟用自動同步處理] 選項。

新增自訂網域

您可以使用 CNAME 記錄將自訂 DNS 名稱對應至 Azure Spring Apps。

注意

不支援 A 記錄。

建立 CNAME 記錄

移至您的 DNS 提供者,並新增 CNAME 記錄,以將網域對應至 <service-name>.azuremicroservices.io<service-name>以下是 Azure Spring Apps 實例的名稱。 我們支援通配符網域和子網域。

新增 CNAME 之後,DNS 記錄頁面會類似下列範例:

顯示 Azure Spring Apps 實例之 DNS 記錄頁面的螢幕快照。

將自定義網域對應至 Azure Spring Apps 應用程式

如果您沒有 Azure Spring Apps 中的應用程式,請遵循快速入門:將第一個應用程式部署至 Azure Spring Apps 中的指示。

移至應用程式頁面。

  1. 選取 [自定義網域]。

  2. 然後 新增自定義網域

    顯示 [自定義網域] 頁面之 Azure 入口網站 的螢幕快照。

  3. 輸入您新增 CNAME 記錄的完整功能變數名稱,例如 www.contoso.com。 請確定 [主機名] 記錄類型設定為 CNAME (<service-name>.azuremicroservices.io

  4. 選取 [驗證 ] 以啟用 [ 新增 ] 按鈕。

  5. 選取 [新增]。

    Azure 入口網站 [新增自定義網域] 對話框的螢幕快照。

一個應用程式可以有多個網域,但一個網域只能對應至一個應用程式。 當您成功將自定義網域對應至應用程式時,它會顯示在自定義網域數據表上。

顯示自訂網域數據表之 Azure 入口網站 螢幕快照。

注意

自定義網域的 「不安全」標籤表示尚未系結至SSL憑證。 從瀏覽器到自定義網域的任何 HTTPS 要求都會收到錯誤或警告。

新增 SSL 系結

在自定義網域數據表中,選取 [新增 ssl 系結 ],如上圖所示。

  1. 選取您的 憑證 或匯入憑證。

  2. 選取 [儲存]。

    顯示 [TLS/SSL 系結] 窗格之 Azure 入口網站 的螢幕快照。

成功新增 SSL 系結之後,網域狀態就會安全: 狀況良好

顯示網域狀態狀況良好之 SSL 系結的螢幕快照。

強制使用 HTTPS

根據預設,任何人都可以使用 HTTP 存取您的應用程式,但您可以將所有 HTTP 要求重新導向至 HTTPS 連接埠。

在您的應用程式頁面中,在導覽中,選取 [ 自定義網域]。 然後,將 [僅限 HTTPS] 設定Yes

SSL 系結的螢幕快照,其中已醒目提示 [僅限 Https] 選項。

作業完成時,流覽至指向您應用程式的任何 HTTPS URL。 請注意,HTTP URL 無法運作。

下一步