Utilizar o Seu Projeto
Secrets e Variáveis de Ambiente
Armazena chaves API e configuração de forma segura e expõe-as ao teu projeto deployed em runtime.
Última atualização:
O que são secrets?
Secrets são valores com nome — chaves de API, tokens, URLs de base de dados, chaves de assinatura de webhooks — que o teu projeto implementado precisa em tempo de execução, mas que nunca devem aparecer no teu código fonte, histórico de chat ou no bundle gerado. O FloopFloop armazena-os encriptados e injeta-os no teu projeto em execução como variáveis de ambiente.
O separador Secrets também aloja o cartão de Cryptohopper para ligar uma conta de exchange quando o teu projeto precisar de uma. Os jobs agendados utilizam o mesmo modelo de injeção em tempo de execução, mas são registados automaticamente a partir do manifesto de template — consulta Scheduled Jobs.
Dentro do teu projeto implementado, lês-os da mesma forma que farias em qualquer aplicação Node.js:
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);Porquê usar secrets em vez de hardcoding?
- As credenciais nunca entram no histórico de chat.Se colares uma chave no chat, o guard do lado do servidor do FloopFloop's rejeita a mensagem antes de ser persistida ou enviada à IA.
- As credenciais nunca entram no bundle gerado. O código do teu projeto referencia
process.env.MY_KEY; o valor só é materializado dentro do runtime de implementação. - Podes rodar sem reimplementar. Atualiza um secret e o novo valor é utilizado no próximo pedido.
Gerir secrets a partir do dashboard
Abre o teu projeto, vai a Settings e faz scroll até à secção Secrets & Environment Variables. A partir daí podes adicionar um novo secret, atualizar um existente ou eliminar um. A lista mostra o nome da chave e os últimos quatro caracteres do valor — o valor completo nunca é apresentado depois de o guardares.
Prompts no chat
Quando a IA gera código que precisa de uma credencial que ainda não tem, vai pedi-la inline. Abre-se um diálogo com o nome da chave pré-preenchido; colas o valor e clicas em guardar. O valor vai diretamente para o armazenamento encriptado — não é escrito no transcript do chat nem é visível para a IA.
Regras de nomenclatura de chaves
- Apenas UPPER_SNAKE_CASE (letras, dígitos, underscores).
- Tem de começar com uma letra.
- Entre 1 e 64 caracteres.
- Exemplos:
STRIPE_SECRET_KEY,OPENAI_API_KEY,DATABASE_URL.
Limites
- 25 secrets por projeto. Atualizar um secret existente nunca conta para o limite — apenas adicionar uma nova chave conta.
- 4096 caracteres por valor. Isto está bem acima do comprimento de qualquer chave de API ou token padrão; valores mais longos quase sempre indicam um erro de colagem.
Como são armazenados
Cada valor é encriptado com uma chave gerida pelo cliente do AWS KMS antes de sair do FloopFloop. O contexto de encriptação associa o ciphertext ao projeto e nome de chave específicos, pelo que um ciphertext de um projeto não pode ser desencriptado noutro. Apenas o runtime SSR que serve o teu projeto tem permissão para desencriptar; o dashboard, a IA e os colaboradores do FloopFloop não têm. Os valores nunca são registados em logs.
Acesso programático
Se preferires gerir secrets a partir das tuas próprias ferramentas, a API pública expõe endpoints de listagem, criação/atualização e eliminação. Consulta Secrets API para formas de pedido e resposta.