輪替密鑰

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

事前準備

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

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

    控制台

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

      前往 Secret Manager

    2. 選取密鑰。
    3. 在資訊面板中,按一下「新增主體」
    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. 按一下「Keyset」分頁標籤。

  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. 按一下「Keyset」分頁標籤。

  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