本頁面提供操作說明,引導您手動觸發 Google Distributed Cloud (GDC) 實體隔離網路端點的憑證重新核發程序。
事前準備
如要取得在命名空間中存取憑證所需的權限,請要求機構的 IAM 管理員授予您「Web TLS 憑證管理員」(web-tls-cert-admin
) 角色。
重新核發憑證時,請注意下列帳戶規定:
- 使用基礎架構運算子 (IO) 帳戶存取系統命名空間中的憑證。請要求 IO 執行這項工作。
- 使用平台管理員帳戶存取其他命名空間中的憑證。
重新核發憑證
您可以手動重新核發附有註解更新的憑證。如果預設憑證簽發機構變更,除非憑證即將到期,否則 Distributed Cloud 不會自動重新簽發由先前預設憑證簽發機構簽署的憑證。
如要手動觸發重新核發憑證,請使用 kubectl
CLI 執行下列步驟:
將目標
Certificate
的manual-reissuance
註解設為requested
。以下範例會更新istio-system
命名空間中的default-wildcard-cert
憑證,該命名空間使用目前的預設憑證簽發者:kubectl annotate --overwrite certificate.pki.security.gdc.goog default-wildcard-cert -n istio-system pki.security.gdc.goog/manual-reissuance='requested'
重新核發憑證時,您可能會看到
in-progress
註解值為轉換狀態。等待manual-reissuance
顯示註解值finished
:kubectl -n istio-system get certificate.pki.security.gdc.goog/default-wildcard-cert -ojson | jq -r ' .metadata.annotations."pki.security.gdc.goog/manual-reissuance"'
輸出看起來類似以下內容:
finished
驗證憑證核發單位;該單位必須與憑證規格中提及的核發單位相符,如果未指定,則核發單位必須與目前的預設核發單位相符:
kubectl -n istio-system get certificate.pki.security.gdc.goog/default-wildcard-cert -ojson | jq -r ' .status.issuedBy'
輸出看起來類似以下內容:
{ "name": "byo-cert-issuer", "namespace": "pki-system" }
自行攜帶憑證的手動輪替
觸發並完成手動自備憑證 (BYO 憑證) 輪替時,您必須為先前簽署的 BYO 憑證簽署新產生的憑證簽署要求 (CSR)。詳情請參閱「簽署自備憑證」。
輪替期間,Distributed Cloud 會建立新的私密和公開金鑰組。因此先前上傳的簽署憑證與新 CSR 不相容。如果憑證規格自首次上傳後未變更,系統會繼續使用先前上傳的憑證,直到憑證到期為止。如果規格變更,會發生下列任一事件:
- Distributed Cloud 會使用現有的相符憑證。
- 備援憑證授權單位 (CA) 核發新憑證。
自備憑證手動輪替範例
在下列範例中,您會看到先前簽署的自備憑證,已觸發手動輪替:
byoCertStatus
顯示憑證type
值為Ready
,reason
值為Issued
,且lastTransitionTime
值早於前一個值:{ "byoCertStatus": { "csrStatus": { "conditions": [ { "lastTransitionTime": "2024-05-03T22:38:43Z", "message": "", "observedGeneration": 2, "reason": "WaitingForSigning", "status": "False", "type": "Ready" } ], "csr": "LS0tLS1CRUdJTiBDRVJ..." }, "signedCertStatus": { "conditions": [ { "lastTransitionTime": "2024-05-03T22:38:43Z", "message": "RawSubjectPublickKeyInfo does not match with the CSR", "observedGeneration": 2, "reason": "Rejected", "status": "False", "type": "Ready" } ] } }, ```
在以下範例中,您會看到先前簽署的 BYO 憑證輸出內容,該憑證已觸發手動輪替:
- 在
signedCertStatus
中,reason
欄位會顯示Rejected
,因為輪替後,先前簽署的憑證不再符合新的 CSR。 CSR
reason
狀態WaitingForSigning
:"conditions": [ { "lastTransitionTime": "2024-05-03T08:42:10Z", "message": "Certificate is issued", "observedGeneration": 2, "reason": "Issued", "status": "True", "type": "Ready" } ], "errorStatus": { "errors": [ { "code": "PLATAUTH2002", "message": "Waiting for CSR signing" } ], "lastUpdateTime": "2024-05-03T22:38:43Z" }, "issuedBy": { "name": "byo-cert-issuer", "namespace": "pki-system" } }
管理憑證簽署快訊
對於初始核發、輪替和到期的憑證簽署警報,IO 必須使用 PKI 執行手冊中這些章節記錄的疑難排解步驟來解決:
如為 subCA errorCode:
PLATAUTH2001
,請參閱 PLATAUTH-R2001。如為自備憑證,錯誤代碼為
PLATAUTH2002
,請參閱 PLATAUTH-R2002。