Olá Matheus, tudo na paz?
Sim, é uma solução muito usual, especialmente durante a fase de desenvolvimento local. É infinitamente melhor do que o famigerado "hardcode" (escrever a senha direto no código), que é o pesadelo de qualquer equipe de segurança.
No entanto, como tudo na tecnologia, existem camadas de "boas práticas". Vamos analisar onde essa solução se encaixa e quais são os cuidados:
**Lado positivo: **
Seu código fica limpo e focado na lógica, não em credenciais. (Condigo limpo)
Evita que você suba senhas para o GitHub/GitLab acidentalmente (desde que você não versione os arquivos de configuração do IntelliJ).(Segurança)
Você pode ter diferentes "Run Configurations" para o mesmo projeto (uma apontando para o banco de dados de teste e outra para o de desenvolvimento).(Flexível)
Lado que precisa de atenção dobrada:
O arquivo workspace.xml: O IntelliJ costuma salvar essas variáveis de ambiente dentro da pasta .idea, especificamente no arquivo workspace.xml ou em arquivos .xml dentro de runConfigurations. Se você comitar a pasta .idea no Git, suas variáveis "secretas" irão junto para o repositório.
Bizu: Certifique-se de que a pasta .idea está no seu .gitignore.
ou
Se um colega baixar seu projeto ou se você for rodar a aplicação via terminal (sem abrir o IntelliJ), as variáveis não estarão lá. Você terá que configurá-las novamente no sistema operacional ou no terminal.
Pode dizer em qual linguagem você está usando no momento?