Je crée une application Rails et j'essaie de comprendre la sécurité car elle implique des clés secrètes.Comprendre la sécurité et les clés secrètes
Mon projet utilise Rails 5 et la gemme Devise.
J'ai lu à plusieurs endroits que vous ne voulez pas mettre des fichiers comme secrets.yml sur github pour des raisons de sécurité (que j'ai découvert plusieurs commits sur la route). Cependant, mes clés secrètes utilisées en production sont des variables d'environnement (bien que mon développement et mes clés ne le soient pas, elles peuvent être vues). Ce que j'essaie de comprendre maintenant, c'est que c'est bien que des fichiers comme secrets.yml (j'ai aussi entendu des choses à propos de database.yml aussi), ont fini sur github, aussi longtemps que les bits importants (comme les clés secrètes) sont des variables d'environnement, que heureusement Rails semble avoir pensé par défaut? Ou devrais-je faire l'effort de supprimer ces fichiers?
Comme je l'ai mentionné dans un autre commentaire, mon secrets.yml (et je crois que les autres fichiers importants ainsi), ressemble essentiellement à ce que j'ai énuméré à la fin de ce commentaire. D'après ce que je comprends de votre réponse, il semble que je devrais être sûr, et il est bon en général de pousser des informations comme secrets.yml tant que la production secret_key_base est une variable d'environnement? C'est ce que mes secrets.yml ressemble à >>> développement: secret_key_base: abc123youcanseethiskey test: secret_key_base: 123456ghgyoucanseethiskey production: secret_key_base: <% = ENV ["SECRET_KEY_BASE"]%> – mc92
Cela ne contient pas le secret de production réel. Les clés de développement et de test ne sont pas des informations sensibles. Donc, pas besoin de s'inquiéter de ce fichier, il est destiné à être vérifié dans Git comme ça .. –