2012-07-31 5 views
2

Développer l'application dans Ruby on Rails, hébergé sur Heroku.Comment stocker les identifiants/clés d'application en toute sécurité?

Notre application a plusieurs différents ID d'application/clés attribuées par un certain nombre de services différents (Facebook, Mixpanel, etc). Nous ajoutons maintenant un système de paiement et nous prévoyons d'utiliser Stripe. Nous avons également un identifiant d'application Stripe.

Quelle est la meilleure façon de stocker ces ID d'application en toute sécurité? Actuellement, ils sont simplement stockés en tant que variables d'environnement de rails. Tous les employés ont ainsi accès à tous nos identifiants d'application. Hypothétiquement, si un ingénieur devient «voyou» ... Ils pourraient alors empoisonner leur propre cache DNS et faire correspondre notre site web à une adresse IP aléatoire qu'ils contrôlent. Ainsi, les demandes pourraient utiliser notre identifiant d'application mais exécuter des transactions que nous n'avons pas acceptées.

Quelle est une bonne façon de stocker tous ces différents ID d'application de manière sécurisée? Nous sommes d'accord si l'un de nos co-fondateurs a ces ID d'application, mais de préférence, il devrait y avoir un moyen sûr d'accéder à ces ID d'application sans nécessairement révéler ce que sont réellement les ID.

Répondre

1

Ceci est une question qui n'est pas résolu avec la technologie, mais avec des contrats. Les développeurs en sauront toujours plus et auront un accès plus intime à un projet que l'équipe de direction, et à moins que vous ne soyez obligé de vous en préoccuper (c'est-à-dire de vous conformer aux exigences PCI ou gouvernementales), vous ne devriez pas.

-1

Je ne me Heroku, mais ont fait quelque chose de semblable à ce qu'ils décrivent ici: https://devcenter.heroku.com/articles/config-vars

tl; dr: mettre vos identifiants dans les variables d'environnement

+0

"Actuellement, ils sont simplement stockés en tant que variables d'environnement de rails." La compréhension à la lecture va un long chemin. – coreyward

Questions connexes