10
votes

Mot de passe Protection d'un environnement de rassemblement de rails

J'essaie de déterminer quelle serait la meilleure façon de sécuriser mon environnement de stadification. Actuellement, je rencontre à la fois la mise en scène et la production sur le même serveur.

Les deux options que je peux penser aurait:

Utilisez des rails Digest Authentification

Je pourrais mettre quelque chose comme celui-ci dans l'application_controller.rb xxx

ceci a été déchiré de Blog de Ryan Daigle . Je cours sur les derniers rails 2.3 Donc, je devrais être libre du problème de sécurité qu'ils avaient avec ceci.

Utilisez l'authentification du serveur Web

Je pouvais Aussi réaliser cela en utilisant .htaccess ou Apache Autorisations, mais il rend mon serveur à provisionner légèrement plus complexe (j'utilise le chef et nécessiterait des configurations Apache différentes pour la mise en scène / la production).


pour l'instant J'ai le premier mis en œuvre et travaillé, voyez-vous des problèmes de AY avec cela? Ai-je manqué quelque chose d'évident? Merci d'avance!


0 commentaires

3 Réponses :


1
votes

J'irais avec l'authentification de base HTTP, je ne vois aucun problème inhérent à celui-ci.


1 commentaires

C'est ce que j'ai fini par faire. Il a travaillé un régal pour les 3 derniers mois.



25
votes

cogner cela pour aider les autres, comme moi-même comme je l'ai lu avant de m'installer sur une solution similaire, mais plus propre.

# config/environments/staging.rb

MyApp::Application.configure do
  config.middleware.insert_after(::Rack::Lock, "::Rack::Auth::Basic", "Staging") do |u, p|
    [u, p] == ['username', 'password']
  end

 #... other config
end



8
votes

Si vous déployez des environnements multi-étages et que vous disposez d'un environnement de production et d'un environnement de transfert, il vous suffit d'ajouter ces lignes à config / environnements / staging.rb xxx

Ce faisant, vous n'avez pas besoin de configurer Apache.

J'utilise Ruby 2 avec des rails 4 et cela fonctionne comme un charme!


0 commentaires