設定發布作業和儲存空間
憑證授權單位服務 (CA 服務) 會使用 Cloud Storage 值區,發布公用金鑰基礎架構 (PKI) 的 CA 憑證和憑證撤銷清單 (CRL)。
本文說明如何設定 CA Service 使用的 Cloud Storage 儲存空間,發布 PKI 的 CA 憑證和 CRL。您可以選擇使用 Google 代管值區或客戶自行管理的值區,以便更直接地控管。如要進一步瞭解 Cloud Storage bucket,請參閱「關於 Cloud Storage bucket」。本文也涵蓋管理發布設定,例如啟用或停用發布功能,以及選擇編碼格式。
使用 Google 管理的值區
CA Service 會自動管理 Cloud Storage 儲存空間的生命週期。系統不會針對這些資源另外收費。
根據預設,建立 CA 集區時,CA Service 會建立及管理具有下列特徵的 Cloud Storage 值區:
- 位置:bucket 與集區位於相同專案和位置。
- 集中式儲存空間:值區會儲存 CA 集區中所有 CA 的 CA 憑證和 CRL。
- 可公開讀取:使用授權單位資訊存取權 (AIA) 和 CRL 發布點 (CDP) 擴充功能時,用戶可自動存取物件。
Google 管理的 bucket 優點
由 Google 管理的值區可簡化管理作業。建立 CA 集區時,CA 服務會自動建立及管理用於發布 CA 憑證和 CRL 的值區。您不需要設定任何其他 Cloud Storage 值區。
VPC Service Controls 注意事項
VPC Service Controls 範圍會限制只有該範圍內的用戶端,才能存取 Google 代管的 Cloud Storage bucket。無法從周邊以外存取 CA 憑證和 CRL 的 AIA 和 CDP 網址。如果無法存取,perimeter 外部的用戶端可能會無法驗證憑證。
如要瞭解如何建立根 CA,請參閱建立根 CA。如要瞭解如何建立從屬 CA,請參閱「建立從屬 CA」。如要瞭解如何選擇金鑰演算法,請參閱「選擇金鑰演算法」。
使用客戶自行管理的值區
客戶管理的資源僅適用於企業級 CA。您必須先建立及設定這些資源,才能建立 CA,並在刪除 CA 時刪除這些資源。系統會直接向您收取這些資源的費用。
您可以指定專案中現有的 Cloud Storage 值區,發布 CA 集區的 CA 憑證和 CRL。您可以直接控管 bucket 的設定,包括位置、儲存空間級別、生命週期政策和存取權控管。
客戶自行管理值區的優點
使用客戶自行管理的值區,可直接控管儲存空間值區。您可以更新存取權管理等屬性,以符合貴機構的需求。
如要使用客戶管理的值區建立 CA,您必須具備該值區的管理員存取權,才能授予 CA 服務適當的存取權。詳情請參閱「CA Service Service Agent」。
Cloud Storage 值區位置
在與 CA Service 資源相同的位置建立客戶管理的 Cloud Storage bucket。
舉例來說,如果您的 CA 位於 us-west1,您可以在任何美國單一區域 (例如 us-west1 或 us-east1)、NAM4 雙區域或 US 多區域中建立 Cloud Storage 值區。如需可用位置清單,請參閱 Cloud Storage 位置。
事前準備
確認 Cloud Storage bucket 是否存在。請參閱「建立 bucket」。
確認 CA Service 服務帳戶可存取該 bucket。
必要的角色
為確保服務帳戶具備寫入及管理物件 (特別是 CA 憑證和 CRL) 的必要權限,並啟用監控功能,請管理員在客戶管理的 Cloud Storage 值區中,將下列 IAM 角色授予服務帳戶:
-
如要寫入及管理 CA 憑證和 CRL,請使用:
Storage 物件管理員 (
roles/storage.objectAdmin) -
如要允許值區整合 Cloud Monitoring,請指派 Storage 舊版值區讀取者 (
roles/storage.legacyBucketReader) 角色。
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
管理員或許也能透過自訂角色或其他預先定義的角色,授予服務帳戶必要權限。
設定 CA 以使用 bucket
如要在建立憑證授權單位時指定客戶代管的 Cloud Storage bucket,請搭配 gcloud privateca roots create 或 gcloud privateca subordinates create 指令使用 --bucket 旗標。
如要瞭解如何建立 CA,請參閱下列文章:
管理憑證和 CRL 的存取權
使用客戶管理的 bucket 時,您可以控管存取權限。除非另行設定,否則 CA Service 發布的 CA 憑證和 CRL 會沿用值區的預設物件權限。如要公開存取憑證授權單位資訊存取權 (AIA) 和 CRL 發布點 (CDP) 網址,請將發布的物件設為可公開讀取。
根據預設,CA Service 會在 AIA 和 CDP 擴充功能中使用 HTTP 網址,以參照 CA 憑證和 CRL。請使用 HTTP 網址,確保用戶端相容性。部分用戶端不支援 AIA 或 CDP 擴充功能中的 HTTPS。 數位簽章可確保 CA 憑證和 CRL 的完整性和真實性。
詳情請參閱 Cloud Storage 說明文件中的「存取權控管總覽」和「設定物件權限」。
管理出版品設定
根據預設,建立 CA 集區時,CA Service 會啟用 CA 憑證和 CRL 發布至 Cloud Storage bucket 的功能。您可以更新這些發布設定,啟用或停用發布功能,或是變更編碼格式。
為 CA 集區啟用發布功能
如要為 CA 集區中的所有 CA 啟用 CA 憑證和 CRL 發布功能,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Certificate Authority Service」(憑證授權單位服務)頁面。
在「CA pool manager」(CA 集區管理員) 分頁中,按一下要編輯的 CA 集區名稱。
在「CA pool」(CA 集區) 頁面中,按一下 「Edit」(編輯)。
在「設定允許的金鑰演算法和大小」下方,按一下「下一步」。
在「設定可接受的憑證要求方法」下方,按一下「下一步」。
在「設定發布選項」下方,按一下「針對這個集區中的 CA,將 CA 憑證發布至 Cloud Storage 值區」的切換鈕。
點選「針對這個集區中的 CA,將 CRL 發布至 Cloud Storage 值區」的切換按鈕。
gcloud
執行下列指令:
gcloud privateca pools update POOL_ID --location LOCATION --publish-crl --publish-ca-cert
更改下列內容:
POOL_ID:CA 集區的名稱LOCATION:CA 集區的位置。如需可用位置清單,請參閱「CA 服務位置」。
如要進一步瞭解 gcloud privateca pools update 指令,請參閱「gcloud privateca pools update」。
如要進一步瞭解如何啟用 CRL 發布功能來撤銷憑證,請參閱「撤銷憑證」。
停用憑證授權單位集區的發布功能
如要為 CA 集區中的所有 CA 停用 CA 憑證和 CRL 發布功能,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Certificate Authority Service」(憑證授權單位服務)頁面。
在「CA pool manager」(CA 集區管理員) 分頁中,按一下要編輯的 CA 集區名稱。
在「CA pool」(CA 集區) 頁面中,按一下 「Edit」(編輯)。
在「設定允許的金鑰演算法和大小」下方,按一下「下一步」。
在「設定可接受的憑證要求方法」下方,按一下「下一步」。
在「設定發布選項」下方,按一下「針對這個集區中的 CA,將 CA 憑證發布至 Cloud Storage 值區」的切換鈕。
點選「針對這個集區中的 CA,將 CRL 發布至 Cloud Storage 值區」的切換按鈕。
gcloud
執行下列指令:
gcloud privateca pools update POOL_ID --location LOCATION --no-publish-crl --no-publish-ca-cert
更改下列內容:
POOL_ID:CA 集區的名稱LOCATION:CA 集區的位置。如需可用位置清單,請參閱「CA 服務位置」。
選擇編碼格式
如要更新已發布的 CA 憑證和 CRL 編碼格式,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Certificate Authority Service」(憑證授權單位服務)頁面。
在「CA pool manager」(CA 集區管理員) 分頁中,按一下要編輯的 CA 集區名稱。
在「CA pool」(CA 集區) 頁面中,按一下 「Edit」(編輯)。
在「設定允許的金鑰演算法和大小」下方,按一下「下一步」。
在「設定可接受的憑證要求方法」下方,按一下「下一步」。
在「設定發布選項」下方,按一下「發布編碼格式」清單。
選取發布編碼格式。
gcloud
執行下列指令:
gcloud privateca pools update POOL_ID --location=LOCATION --publishing-encoding-format=PUBLISHING_ENCODING_FORMAT
更改下列內容:
POOL_ID:CA 集區的名稱LOCATION:CA 集區的位置。如需可用位置清單,請參閱「CA 服務位置」。PUBLISHING_ENCODING_FORMAT:編碼格式可以是PEM或DER如要進一步瞭解
gcloud privateca pools update指令,請參閱「gcloud privateca pools update」。
後續步驟
- 瞭解如何建立 CA 集區。
- 瞭解如何建立根 CA。
- 瞭解如何建立從屬 CA。
- 瞭解如何從外部 CA 建立從屬 CA。