1
resposta

Novos desenvolvedores no projeto

A solução de esconder as chaves parece ok, mas se por um acaso alguém novo entrar no projeto/baixar o projeto, como ela vai saber quais configurações deve setar pro projeto conseguir rodar? No que entendi, só vai descobrir quando for testar e não funcionar.

Na abordagem de node.js, temos o .env e o .env.example, onde apenas versionamos o .env.example e passamos a lista das chaves SEM o valor (que estaria no .env não versionado), e nesse caso, se alguém externo baixar o projeto, estará claro o que ele precisa preencher pra fazer o projeto rodar de acrodo. Como seria isso nessa situação?

1 resposta

Olá, Lucas

Entendo sua preocupação em relação às configurações do projeto e como novos desenvolvedores poderiam saber quais configurações devem ser definidas para que o projeto funcione corretamente. No caso do .NET 5 e Identity, a abordagem utilizada é a criação de secrets.

Os secrets são informações sensíveis, como chaves de API, senhas e outros dados confidenciais, que não devem ser expostos no código-fonte ou em arquivos versionados. No caso do .NET 5, você pode utilizar o comando dotnet user-secrets para armazenar esses secrets de forma segura.

Durante a aula/exercício, o instrutor mostra como criar e adicionar os secrets ao projeto. Primeiro, é utilizado o comando dotnet user-secrets init para inicializar o uso de secrets no projeto. Em seguida, o comando dotnet user-secrets set é utilizado para definir os valores dos secrets.

Por exemplo, para definir o valor do secret "From" do "EmailSettings", o instrutor utiliza o comando dotnet user-secrets set "EmailSettings:From" "sistemadecinemasalura@gmail.com". Da mesma forma, são definidos os valores para os secrets "SmtpServer" e "Port".

Esses secrets são armazenados de forma segura no sistema, em arquivos específicos, e não são compartilhados no repositório do projeto. No caso do Windows, por exemplo, eles são armazenados na pasta "AppData > Roaming > Microsoft > UserSecrets".

Dessa forma, quando um novo desenvolvedor baixar o projeto, ele precisará configurar os secrets localmente em sua máquina, seguindo as mesmas etapas que você realizou. Assim, o projeto funcionará corretamente em seu ambiente de desenvolvimento.

É importante ressaltar que os secrets não devem ser compartilhados publicamente ou expostos de forma insegura. Eles são destinados apenas ao ambiente de desenvolvimento e devem ser tratados com cuidado.

Espero ter esclarecido sua dúvida! Se tiver mais alguma pergunta, estou à disposição. Bons estudos!

Espero ter ajudado e bons estudos!