Criar e gerenciar segredos com o Cloud Code

Saiba como criar e gerenciar secrets usando a integração do Secret Manager do Cloud Code.


Para seguir as instruções da tarefa diretamente no editor do Cloud Shell, clique em Orientação:

Orientações


Antes de começar

  1. In the Google Cloud console, go to the project selector page.

    Go to project selector

  2. Select or create a Google Cloud project.

  3. Criar o serviço do Cloud Run

    Use o editor do Cloud Shell como ambiente para criar o serviço e o segredo do Cloud Run. Ele vem pré-carregado com as ferramentas necessárias para desenvolvimento na nuvem.

    Siga estas etapas para criar o serviço:

    1. Na barra de status do Cloud Code, clique no nome do projeto ativo.

      Nome do projeto ativo na barra de status

    2. No menu "Escolha rápida" que aparece, clique em Novo aplicativo e e clique em Aplicativo do Cloud Run.

    3. Na lista de amostras do Cloud Run, selecione Python (Flask): Cloud Run.

    4. Selecione uma pasta para usar como exemplo e clique em Criar novo aplicativo.

    Depois que o editor do Cloud Shell carregar seu serviço em um novo espaço de trabalho, confira os arquivos na visualização do explorador.

    Criar um secret

    O Secret Manager permite que você armazene, gerencie e acesse segredos como blobs binários ou strings de texto. Além disso, ele gerencia seus segredos, o que significa que você não precisa lidar com máquinas virtuais ou serviços operacionais.

    Para criar um segredo com a integração do Secret Manager do Cloud Code:

    1. Clique em Secret Manager e aguarde o carregamento.
    2. Se for preciso autorizar o Cloud Shell a realizar chamadas das APIs do Google Cloud, clique em Autorizar.
    3. Clique em add Create Secret.
    4. Se solicitado, escolha seu projeto do Google Cloud no seletor suspenso.
    5. Se solicitado, ative a API Secret Manager.
    6. Na guia Secret Manager - Criar segredo que aparece, insira o seguinte no campo Nome:

      my-secret
      
    7. No campo Valor do segredo, insira:

      Hello secret!
      
    8. Clique em Criar segredo e uma mensagem informando que sua chave secreta foi criada aparecerá.

    Adicionar um segredo ao código

    Segredos são ótimos para armazenar informações de configuração, como senhas de banco de dados, chaves de API ou certificados TLS necessários para um aplicativo no tempo de execução.

    Para adicionar um segredo ao código:

    1. Abra o Google Cloud API e selecione a API Secret Manager.

      Isso abrirá a guia "Detalhes da API do Google Cloud" com a API Secret Manager como título.

    2. Na seção Instalar biblioteca de cliente, clique na guia Python e Clique em play_arrow Executar no terminal. A biblioteca de cliente google-cloud-secret-manager será instalada.

    3. Abra requirements.txt e adicione a linha a seguir à parte de baixo do arquivo:

      google-cloud-secret-manager==2.1.0
      

      Suas alterações são salvas automaticamente.

    4. Para conferir o valor mais recente do segredo, abra o arquivo app.py e copie e cole a seguinte função: após a função hello:

      def access_secret_version(secret_version_id):
          """Return the value of a secret's version"""
          from google.cloud import secretmanager
      
          # Create the Secret Manager client.
          client = secretmanager.SecretManagerServiceClient()
      
          # Access the secret version.
          response = client.access_secret_version(name=secret_version_id)
      
          # Return the decoded payload.
          return response.payload.data.decode('UTF-8')
      
      
    5. Para chamar a função access_secret_version, substitua a variável de mensagem por este código:

      message = access_secret_version("<SECRET_VERSION_ID>")
      
    6. Se a guia Secret Manager - Criar secret ainda estiver aberta, file_copy Copie o ID.

      Para conferir o ID de uma versão de segredo a qualquer momento, acesse Gerenciador de segredos > [SECRET_NAME] > Versões, mantenha o ponteiro sobre a versão e clique em Copiar ID do recurso.

    7. Para adicionar o ID da versão, substitua o marcador de posição <SECRET_VERSION_ID> pelo ID da versão copiada.

    Executar no emulador do Cloud Run

    Para testar o novo segredo, execute o serviço do Cloud Run localmente no emulador do Cloud Run.

    1. Abra o menu Cloud Code na barra de status.
    2. Para criar e implantar seu serviço no emulador, selecione Executar no emulador do Cloud Run.
    3. Na guia "Executar/Depurar" no emulador do Cloud Run que aparece, clique em Executar.
    4. Ao executar a configuração pela primeira vez, esse processo pode levar até cinco minutos. O painel Saída exibirá o progresso à medida que o aplicativo for criado e implantado.

    5. Após a criação do seu app, inicie-o clicando no link do host local aparece na Saída do painel de controle. O valor do segredo é exibido abaixo do gráfico de sucesso.

    Acessar e criar uma nova versão do segredo

    A visualização do Secret Manager do Cloud Code mostra rapidamente os segredos do projeto, com ações para gerenciá-los.

    Visualizar o valor de uma versão do segredo

    1. Clique na visualização Gerenciador de secrets.
    2. Clique para abrir o secret.
    3. Na pasta Versões, clique com o botão direito do mouse na versão numerada que você quer visualizar o valor e selecione Mostrar valor da versão.

    Não é possível editar uma versão do segredo. Para atualizar o valor de um segredo, é necessário criar uma nova versão.

    Criar uma nova versão do segredo

    O valor de um segredo é armazenado em uma versão do segredo. Um segredo pode ter várias versões. Isso é útil em situações em que um segredo muda. Atualizar um segredo com uma nova versão significa que você não precisa atualizar o código.

    1. Clique no botão Secreto Manager.
    2. Clique com o botão direito do mouse no nome do segredo e selecione Criar versão do segredo.
    3. Na guia Secret Manager - Criar versão que aparece, insira um novo valor e clique em Criar versão.
    4. Depois que a guia Secret Manager - Criar secret abrir, clique em file_copy Copiar para copiar o ID.
    5. Para adicionar o ID da versão mais recente, substitua a versão atual que aparece na mensagem no app.py pelo ID da versão mais recente que você copiou.

    Se você quiser que o código sempre use a versão mais recente, substitua o número da versão no final do ID da versão por latest.

    Ver e gerenciar segredos

    Desativar uma versão do segredo

    Versões de segredos são ativadas por padrão após a criação, o que significa que podem ser acessadas. Um secret desativado fica inacessível, mas é possível restaurar o acesso a qualquer momento a ele a qualquer momento.

    Para desativar uma versão do segredo:

    1. Clique em Cloud Code e abra a seção Gerenciador de secrets.
    2. Clique no segredo para expandi-lo.
    3. Na pasta Versões, clique com o botão direito do mouse na versão numerada que você quer desativar.
    4. Selecione Desativar versão.

    Destruir uma versão de secret

    Quando você destrói uma versão do secret, ela não pode ser acessada. A destruição de uma versão do secret é permanente.

    1. Clique em Cloud Code e abra a seção Gerenciador de secrets.
    2. Clique no segredo para expandi-lo.
    3. Na pasta Versões, clique com o botão direito do mouse na versão que você quer destruir.
    4. Selecione Destruir versão.

    Limpar

    Para excluir apenas o cluster criado para este guia de início rápido:

    1. Clique em . Cloud Code e, em seguida, expandir a seção Kubernetes.
    2. Mantenha o cursor sobre o nome do cluster e clique em open_in_new Abrir no console do Google Cloud.
    3. Clique em Excluir e em Excluir.

    Para excluir o projeto (e os recursos associados, incluindo os clusters):

    1. Acesse a página "Projetos" no Console do Google Cloud.

      Acessar a página "Projetos"

    2. Selecione o projeto que você criou para este guia de início rápido e clique em Excluir.

    3. Digite o ID do projeto para confirmar e clique em Encerrar.

      Isso encerrará o projeto e programará a remoção dele.