2014-05-11 4 views
0

Nous construisons une application rails soutenue par mysql qui va stocker des informations sensibles telles que le nom d'utilisateur, mot de passe, api_key qui sont spécifiques à chaque utilisateur connecté.Comment sécuriser le nom d'utilisateur, mot de passe, api_keys

Y at-il une gemme qui permettra la protection de ces données de production contre le vol par des membres de l'équipe interne ou des gens externes.

Nous ne voulons pas que les informations sensibles soient imprimées dans les journaux Nous devrions pouvoir empêcher l'ingénierie inverse des données sensibles en cas de vol de données.

Comment devrions-nous concevoir le système pour éviter les scénarios ci-dessus.

+0

En ce qui concerne le mot de passe est concerné, stocker crypté. N'importe qui avec suffisamment de privilèges de base de données sera en mesure de voir des données comme des noms d'utilisateur, cependant. – Arjan

+0

Ne stockez pas les mots de passe [du tout] (http://stackoverflow.com/a/13326205/533120) (même chiffrés). Juste stocker les hashs de mot de passe. Et [sel] (http://en.wikipedia.org/wiki/Salt_ (cryptographie)) pour une bonne mesure. Voir aussi [this] (http://stackoverflow.com/a/12538258/533120). –

+1

Je pense que cette question a été mal comprise, et OP signifie stocker les connexions externes et les mots de passe dans sa base de données. –

Répondre

0

Vous pouvez empêcher certains paramètres d'être affichées dans les journaux Rails avec:

config.filter_parameters << :parameter_name 

Plus d'informations à ce sujet est disponible à http://guides.rubyonrails.org/configuring.html#rails-general-configuration

Soyez données au courant pourraient montrer encore dans vos journaux de base de données ou d'autres journaux votre système peut être en train de collecter.

De toute façon, vous devriez crypter des choses comme des mots de passe, mais l'accès de votre équipe au système sera probablement affecté par l'accès au code source/logs/base de données.

En ce qui concerne l'accès externe, un bon point de départ serait la documentation de sécurité Rails à http://guides.rubyonrails.org/security.html

+0

Je comprends la partie de ne pas les montrer dans les journaux Rails. Comment puis-je stocker api_keys spécifiques à l'utilisateur (disons twitter, fb ou flickr, youtube) d'une manière sûre. – Rpj

Questions connexes