Ich versuche herauszufinden, wie der beste Weg zur Sicherung meiner Staging-Umgebung aussehen würde. Zur Zeit läuft sowohl die Bereitstellung als auch die Produktion auf demselben Server.Passwort zum Schutz einer Schienen-Staging-Umgebung
Die beiden Optionen, die ich denken kann, wäre:
Verwenden Schienen Digest-Authentifizierung
ich so etwas wie dies in der application_controller.rb
# Password protection for staging environment
if RAILS_ENV == 'staging'
before_filter :authenticate_for_staging
end
def authenticate_for_staging
success = authenticate_or_request_with_http_digest("Staging") do |username|
if username == "staging"
"staging_password"
end
end
unless success
request_http_digest_authentication("Admin", "Authentication failed")
end
end
Dies wurde zerrissen setzen könnte von Ryan Daigle's blog. Ich laufe auf dem neuesten Rails 2.3, so dass ich von dem Sicherheitsproblem, das sie damit hatten, frei sein sollte.
Verwenden Webserver-Authentifizierung
kann ich auch diese Berechtigungen mit .htaccess oder Apache erreichen, aber es ist mein Server-Provisioning etwas komplexer macht (ich Chef bin mit und würde verschiedene Apache-Konfigurationen für Staging erfordern /Produktion).
Für jetzt habe ich die erste implementiert und funktioniert, sehen Sie ay Probleme damit? Habe ich etwas Offensichtliches verpasst? Danke im Voraus!
Es gibt auch diese Option, die kürzlich hinzugefügt wurde: https://github.com/rails/rails/commit/e2b07ee000439d0bd41f725ff9f7ad53e52a7e9b, Ich mag Ihre Lösung aber, ich denke, es ist der Weg zu gehen. – jonnii