1
resposta

[Sugestão] Substituindo Credenciais Hardcoded por Variáveis de Ambiente

No código original, as credenciais do banco de dados estão sendo inseridas diretamente na string de conexão, o que pode trazer riscos de segurança, como exposição acidental do usuário e senha no código-fonte ou em repositórios versionados.

Minha sugestão é utilizar variáveis de ambiente (process.env) para armazenar essas informações sensíveis, tornando o código mais seguro e flexível.

Benefícios dessa abordagem:

  • ✅ Segurança: evita expor credenciais no código e reduz o risco de vazamentos acidentais.
  • ✅ Facilidade de configuração: permite alterar as credenciais sem modificar o código-fonte.
  • ✅ Boa prática: segue princípios de desenvolvimento seguro e facilita a conformidade com padrões de segurança.
import mongoose from "mongoose";

const user = process.env.MONGODB_USER
const password = process.env.MONGODB_PASSWORD

async function conectaNaDatabase() {
    mongoose.connect(`mongodb+srv://${user}:${password}@cluster0.jtryg.mongodb.net/livraria?retryWrites=true&w=majority&appName=Cluster0`);

    return mongoose.connection;
}

export default conectaNaDatabase;

Lembre-se de que, para que essa abordagem funcione, você precisa configurar as variáveis de ambiente no seu sistema operacional.

1 resposta

Olá Eduardo! Tudo bem?

Sua sugestão de usar variáveis de ambiente para armazenar credenciais sensíveis do banco de dados é excelente e está em linha com as melhores práticas de segurança em desenvolvimento de software.

Continue com esse empenho e bons estudos!