1
resposta

[Dúvida] Senha do BD na ConnectionString

É comum, quando estamos estudando, deixarmos a senha do banco de dados exposta na connection string. No entanto, em uma aplicação real, entendo que não seria uma boa prática deixar a senha visível no código. Nesse caso, como podemos evitar essa exposição?

1 resposta

Oii Gabriel, tudo bem?

Em um cenário real, realmente não é uma boa prática deixar a senha do banco de dados exposta na connection string. Existem várias maneiras de proteger essas informações sensíveis, mas vou te mostrar uma maneira bastante comum que é o uso de variáveis de ambiente.

Variáveis de ambiente são um recurso do sistema operacional que permite que você defina valores que podem ser acessados por qualquer aplicativo em execução. No caso do ASP.NET Core, você pode definir a sua connection string como uma variável de ambiente e depois acessá-la no seu código.

Pode ser algo nessa linha:

  1. Defina a sua connection string como uma variável de ambiente. O nome da variável pode ser algo como "ConnectionString". O valor deve ser a sua connection string, mas sem a senha. Por exemplo: "Server=tcp:screensoundserver.database.windows.net,1433;Initial Catalog=ScreenSoundV0;Persist Security Info=False;User ID=andre;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;".

  2. No seu código, você pode acessar essa variável de ambiente usando a classe Environment do .NET. Por exemplo:

string connectionString = Environment.GetEnvironmentVariable("ConnectionString");
  1. Agora, você pode usar essa variável connectionString para se conectar ao banco de dados.

Essa é apenas uma maneira de proteger a senha do banco de dados. Existem outras técnicas que você pode usar, dependendo das necessidades da sua aplicação.

Um abraço e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software