Eu tenho um modelo de instância do Google Cloud Compute Engine com um script de inicialização.
No script de inicialização o servidor gera um certificado. Após gerar o certificado ele envia uma mensagem para uma API para informar um sistema central sobre o certificado. A solicitação fica assim:
curl --location 'https://my-side.com/hello?hostname=$hostname' \
--header 'Authorization: SUPER_SECRET_API_KEY'
A chave de API é armazenada como texto bruto no script de inicialização. Está tudo bem ou deveria ser movido para um armazenamento secreto de exemplo? Em caso afirmativo, como posso ler a chave da API no script de inicialização?
Sempre armazene as chaves de API nas variáveis de ambiente. Use os comandos abaixo para o mesmo,
Para Linux:
exportar API_KEY=”sua_chave_secreta_aqui”
Para Windows:
Defina API_KEY=your_secret_key_here (certifique-se de que todos esses comandos sejam executados antes de seu aplicativo iniciar)
Além disso, você pode usar o gerenciador de segredos, que é útil para armazenar e acessar chaves de API. Consulte a documentação oficial do GCP para saber mais sobre o gerenciador de segredos.
Além disso, você pode verificar esses documentos para obter informações mais detalhadas. Informe-nos se as informações acima forem úteis.
No GCP, é recomendado armazenar segredos, neste caso as chaves secretas da API, no google secret manager(GSM)
secretmanager.secretAccessor
Você pode usar
gcloud secrets versions access
o comando para extrair o segredo.