Fazer a rotação de secrets

Esta página descreve como atualizar as chaves do Media CDN usadas para solicitações. É possível ter até três chaves públicas e três chaves compartilhadas de validação, totalizando seis chaves por conjunto de chaves. Para evitar exceder esses limites durante um a rotação de chaves, consulte as seguintes instruções sobre como excluir uma compartilhada e como adicionar uma chave.

Antes de começar

  1. Configure suas chaves compartilhadas de validação no Secret Manager.

  2. Conceder o papel de acesso ao Secret Manager (roles/secretmanager.secretAccessor) para o Media CDN conta de serviço.

    Console

    1. No console do Google Cloud, acesse a página do Secret Manager.

      Acessar o Secret Manager

    2. Selecione o secret.
    3. No painel de informações, clique em Adicionar participante.
    4. Em Novos principais, insira a conta de serviço do Media CDN da seguinte maneira:
      service-PROJECT_NUMBER@gcp-sa-mediaedgefill.iam.gserviceaccount.com

      Substitua PROJECT_NUMBER pelo seu número do projeto.

    5. Em Selecionar papel, escolha Secret Manager e Selecione Acessor de secrets do Secret Manager.
    6. Clique em Salvar.

    gcloud

    Use o Comando 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"
        

    Substitua:

    • PROJECT_NUMBER: o ID do seu projeto
    • SECRET_ID: o ID do secret

Excluir um secret

Console

  1. No console do Google Cloud, acesse a página Media CDN.

    Acesse Media CDN

  2. Clique na guia Conjuntos de chaves.

  3. Selecione o conjunto de chaves que contém o secret que você quer excluir e Clique em Editar.

  4. Para excluir uma chave secreta, na seção Chaves > Chaves compartilhadas de validação, clique em Excluir ao lado do nome do secret.

  5. Clique em Atualizar conjunto de chaves.

gcloud

Para excluir uma chave secreta de um conjunto de chaves, use o comando gcloud edge-cache keysets update. Omita o o conjunto de chaves que você quer excluir e especificar os que serão mantidos.

No exemplo abaixo, KEY_VERSION_1 não está listado, enquanto KEY_VERSION_2 e KEY_VERSION_3 estão. Omitindo KEY_VERSION_1 o exclui do conjunto de chaves.

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'

Substitua:

  • KEYSET_NAME: o nome do conjunto de chaves.
  • PROJECT_NUMBER: o ID do seu projeto
  • SECRET_ID: o ID do segredo que você está atualizando.
  • KEY_VERSION: a versão da chave.

editor de texto

  1. Exporte o conjunto de chaves para um arquivo YAML. Use o comando gcloud edge-cache keysets export.

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

    Substitua:

    • KEYSET_NAME: o nome do conjunto de chaves, por exemplo, prod-vod-keyset
    • FILENAME: o nome do arquivo YAML
  2. Edite o arquivo de configuração do conjunto de chaves exportado para remover a chave secreta. O exemplo a seguir mostra como remover a chave secreta mais antiga, que termina em 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"
    

    Substitua:

    • PROJECT_NUMBER: o ID do seu projeto
    • SECRET_ID: o ID do segredo que você está atualizando.
    • KEY_VERSION: a versão da chave.

    O arquivo editado é semelhante a este:

    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. Importe o conjunto de chaves editado. Use o comando gcloud edge-cache keysets import (em inglês).

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

Adicionar um secret

Console

  1. No console do Google Cloud, acesse a página Media CDN.

    Acesse Media CDN

  2. Clique na guia Conjuntos de chaves.

  3. Selecione o conjunto de chaves para o qual você quer adicionar um segredo e clique em Editar.

  4. Para adicionar uma chave secreta, na seção Chaves > Chaves compartilhadas de validação, Clique em Secret. Em seguida, selecione um secret na lista inserir um secret manualmente especificando o ID do recurso ou criar um novo secret e selecione-o.

  5. Selecione uma versão do secret na lista ou crie uma nova. e selecione-o.

  6. Clique em Atualizar conjunto de chaves.

gcloud

Para adicionar uma chave secreta a um conjunto de chaves, use o gcloud edge-cache keysets update comando. Especifique o os conjuntos de chaves que você tem e o que quer adicionar.

No exemplo a seguir, KEY_VERSION_1 foi foi excluído anteriormente, e KEY_VERSION_4 é o um conjunto de chaves que está sendo adicionado. Listagem KEY_VERSION_4 em além de KEY_VERSION_2 e KEY_VERSION_3 o adiciona ao conjunto de chaves.

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'

Substitua:

  • KEYSET_NAME: o nome do conjunto de chaves.
  • PROJECT_NUMBER: o ID do seu projeto
  • SECRET_ID: o ID do secret que você está atualizando
  • KEY_VERSION: a versão da chave.

editor de texto

  1. Exporte o conjunto de chaves para um arquivo YAML. Use o comando gcloud edge-cache keysets export.

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

    Substitua:

    • KEYSET_NAME: o nome do conjunto de chaves
    • FILENAME: o nome do arquivo YAML
  2. No arquivo de configuração do conjunto de chaves exportado, adicione uma nova linha secretVersion que inclua uma nova versão da chave, semelhante a esta:

    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. Importe o conjunto de chaves editado. Use o comando gcloud edge-cache keysets import (em inglês).

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