Guia para gerenciar variáveis de ambiente com Infisical + Node.js

No desenvolvimento de software, gerenciar variáveis de ambiente como chaves de API, credenciais e outras informações confidenciais é crucial. Infisical é uma plataforma criptografada de ponta a ponta de código aberto que pode ajudá-lo a gerenciar variáveis de ambiente em escala.
Neste tutorial, demonstramos como usar o Infisical para gerenciar variáveis de ambiente para sua pilha Node, desde o desenvolvimento local até a produção. Estaremos usando o Infisical Cloud , mas as mesmas etapas se aplicam se você estiver usando uma instância auto-hospedada .
Vamos mergulhar!
O que é o Infisical?
Infisical , uma plataforma de gerenciamento de segredos criptografados ponta a ponta de código aberto com a qual você pode armazenar variáveis de ambiente. É totalmente auto-hospedável em sua própria infraestrutura, bem documentado e incrivelmente bonito.

Seu Node SDK permite recuperar variáveis de ambiente em tempo de execução, seja no desenvolvimento local ou na produção.
Configuração do projeto
Para começar, vamos configurar um projeto no Infisical e adicionar variáveis de ambiente a um ambiente.
- Crie um novo projeto no Infisical.
- Adicione um segredo ao ambiente de desenvolvimento deste projeto para que possamos recuperá-lo para o desenvolvimento local. Na página Secrets Overview, pressione Explore Development e adicione um segredo com a chave NAME e o valor YOUR_NAME . Esta variável de ambiente será buscada para desenvolvimento local.
Para acessar o segredo da nossa aplicação Node, precisamos criar um Infisical Token .
- Acesse Configurações do projeto > Tokens de serviço e pressione Adicionar novo token .
- Nomeie o token (por exemplo, “My App Token”) e selecione Desenvolvimento em Ambiente . Nesta etapa, estamos provisionando este acesso de token ao ambiente de desenvolvimento deste projeto.
- Copie o token e mantenha-o à mão.

Para este guia, criaremos um aplicativo Express mínimo. No entanto, os mesmos princípios se aplicam a qualquer aplicativo Node, como aqueles construídos em Koa ou Fastify.
Inicialize um novo projeto Node.js com um package.json
arquivo padrão.
$ npm init -y
$ npm install express infisical-node
const express = require("express");
const app = express();
const PORT = 3000;
const client = new InfisicalClient({
token: "YOUR_INFISICAL_TOKEN"
});
app.get("/", async (req, res) => {
const name = (await client.getSecret("NAME")).secretValue;
res.send(`Hello, ${name}!`);
});
app.listen(PORT, () => {
console.log(`Example app listening on port ${PORT}`);
});
Inicie o aplicativo e visitehttp://localhost:3000para ver a mensagem “Olá, seu nome”.
$ node index.js
Pontas
Para garantir o desempenho ideal, recomendo criar uma única instância do cliente Infisical e exportá-la para ser usada em todo o aplicativo. O motivo é que o Node SDK armazena em cache todos os segredos e os atualiza periodicamente, reduzindo chamadas excessivas; esse cache integrado torna a sincronização de variáveis de ambiente perfeita em escala.
Também recomendo armazenar o Infisical Token em um .env
arquivo no desenvolvimento local ou como a única variável de ambiente na produção. Dessa forma, você não precisa codificá-lo em seu aplicativo e pode usá-lo para buscar o restante de suas variáveis de ambiente.
Por fim, o SDK é capaz de muito mais do que apenas recuperar segredos. Com as operações create , update e delete disponíveis, é possível criar uma estratégia de gerenciamento de segredo dinâmica e completa com operações como rotação de segredo.
Conclusão
Agora você sabe como buscar segredos do Infisical para seu aplicativo Node. Ao usar Infisical Tokens com escopo para diferentes ambientes, você pode facilmente gerenciar segredos em vários estágios do seu projeto, desde o desenvolvimento local até a produção. A Infisical oferece uma solução segura e amigável ao desenvolvedor para gerenciar seus dados confidenciais, garantindo que seus aplicativos sejam criados com as melhores práticas em mente.