輪替密鑰

本頁面說明如何更新用於已簽署要求的 Media CDN 金鑰。最多可以有三個公開金鑰和三個驗證共用金鑰 (每個金鑰組總計不超過六個金鑰)。如要避免在金鑰輪替期間超出這些限制,請參閱下列操作說明,瞭解如何刪除驗證共用金鑰及新增金鑰。

事前準備

  1. 在 Secret Manager 中設定驗證共用金鑰

  2. Secret Manager 存取角色 (roles/secretmanager.secretAccessor) 授予 Media CDN 服務帳戶。

    控制台

    1. 前往 Google Cloud 控制台的「Secret Manager」頁面。

      前往 Secret Manager

    2. 選取密鑰。
    3. 在資訊面板中,按一下「Add Principal」(新增主體)
    4. 在「新增主體」中,輸入 Media CDN 服務帳戶,如下所示:
      service-PROJECT_NUMBER@gcp-sa-mediaedgefill.iam.gserviceaccount.com

      PROJECT_NUMBER 替換為專案編號。

    5. 在「選取角色」部分,選取「Secret Manager」,然後選取「Secret Manager Secret Accessor」
    6. 按一下 [儲存]

    gcloud

    使用 gcloud secrets add-iam-policy-binding 指令

       gcloud secrets add-iam-policy-binding projects/PROJECT_NUMBER/secrets/SECRET_ID \
           --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-mediaedgefill.iam.gserviceaccount.com" \
           --role="roles/secretmanager.secretAccessor"
        

    更改下列內容:

    • PROJECT_NUMBER:您的專案編號
    • SECRET_ID:密鑰 ID

刪除密鑰

控制台

  1. 前往 Google Cloud 控制台的「Media CDN」頁面。

    前往 Media CDN

  2. 按一下「Keysets」分頁標籤。

  3. 選取含有要刪除密鑰的密鑰集,然後按一下「編輯」

  4. 如要刪除密鑰,請前往「金鑰」> 驗證共用金鑰部分,然後按一下密鑰名稱旁的「刪除」

  5. 按一下「更新金鑰集」

gcloud

如要從金鑰集刪除私密金鑰,請使用 gcloud edge-cache keysets update 指令。省略要刪除的鍵集,並指定要保留的鍵集。

在以下範例中,KEY_VERSION_1 未列出,但 KEY_VERSION_2KEY_VERSION_3 已列出。省略 KEY_VERSION_1會從鍵組中刪除。

gcloud edge-cache keysets update KEYSET_NAME \
    --validation-shared-key='secret_version=projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_2'
    --validation-shared-key='secret_version=projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_3'

更改下列內容:

  • KEYSET_NAME:金鑰組名稱
  • PROJECT_NUMBER:您的專案編號
  • SECRET_ID:要更新的密鑰 ID
  • KEY_VERSION:金鑰版本

文字編輯器

  1. 將金鑰集匯出為 YAML 檔案。使用 gcloud edge-cache keysets export 指令。

    gcloud edge-cache keysets export KEYSET_NAME \
        --destination=FILENAME.yaml
    

    更改下列內容:

    • KEYSET_NAME:金鑰集名稱,例如 prod-vod-keyset
    • FILENAME:YAML 檔案名稱
  2. 編輯匯出的金鑰集設定檔,移除密鑰。 以下範例說明如何移除最舊的密鑰 (結尾為 KEY_VERSION_1):

    name: projects/my-project/locations/global/edgeCacheKeysets/prod-vod-keyset
    validationSharedKeys:
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_1"
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_2"
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_3"
    

    更改下列內容:

    • PROJECT_NUMBER:您的專案編號
    • SECRET_ID:要更新的密鑰 ID
    • KEY_VERSION:金鑰版本

    編輯後的檔案如下所示:

    name: projects/my-project/locations/global/edgeCacheKeysets/prod-vod-keyset
    validationSharedKeys:
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_2"
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_3"
    
  3. 匯入編輯過的鍵集。使用 gcloud edge-cache keysets import 指令:

    gcloud edge-cache keysets import KEYSET_NAME \
        --source=FILENAME.yaml
    

新增密鑰

控制台

  1. 前往 Google Cloud 控制台的「Media CDN」頁面。

    前往 Media CDN

  2. 按一下「Keysets」分頁標籤。

  3. 選取要新增密鑰的密鑰集,然後按一下「編輯」

  4. 如要新增密鑰,請在「金鑰」> 驗證共用金鑰」部分,按一下「密鑰」。然後從清單中選取密鑰、指定資源 ID 手動輸入密鑰,或建立新密鑰,然後選取該密鑰。

  5. 從清單中選取密碼版本,或建立新的密碼版本,然後選取該版本。

  6. 按一下「更新金鑰集」

gcloud

如要將私密金鑰新增至金鑰集,請使用 gcloud edge-cache keysets update 指令。指定您擁有的金鑰集,以及要新增的金鑰集。

在下列範例中,KEY_VERSION_1 先前已刪除,而 KEY_VERSION_4 是要新增的金鑰集。除了 KEY_VERSION_2KEY_VERSION_3 之外,列出 KEY_VERSION_4 也會將其新增至鍵集。

gcloud edge-cache keysets update KEYSET_NAME \
    --validation-shared-key='secret_version=projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_2'
    --validation-shared-key='secret_version=projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_3'
    --validation-shared-key='secret_version=projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_4'

更改下列內容:

  • KEYSET_NAME:金鑰組名稱
  • PROJECT_NUMBER:您的專案編號
  • SECRET_ID:要更新的密鑰 ID
  • KEY_VERSION:金鑰版本

文字編輯器

  1. 將金鑰集匯出為 YAML 檔案。使用 gcloud edge-cache keysets export 指令。

    gcloud edge-cache keysets export KEYSET_NAME \
        --destination=FILENAME.yaml
    

    更改下列內容:

    • KEYSET_NAME:金鑰集名稱
    • FILENAME:YAML 檔案名稱
  2. 在匯出的金鑰集設定檔中,新增包含新金鑰版本的 secretVersion 行,類似於下列內容:

    name: projects/my-project/locations/global/edgeCacheKeysets/prod-vod-keyset
    validationSharedKeys:
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_2"
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_3"
        - secretVersion: "projects/PROJECT_NUMBER/secrets/SECRET_ID/versions/KEY_VERSION_4"
    
  3. 匯入編輯過的鍵集。使用 gcloud edge-cache keysets import 指令:

    gcloud edge-cache keysets import KEYSET_NAME \
        --source=FILENAME.yaml