Suche…


Einführung

Viele APIs von Drittanbietern erfordern einen Schlüssel, um Missbrauch zu verhindern. Wenn Sie einen Schlüssel ausstellen, ist es sehr wichtig, dass Sie den Schlüssel nicht in ein öffentliches Repository einbinden, da andere Benutzer Ihren Schlüssel stehlen können.

Authentifizierungsschlüssel mit Figaro speichern

Füge Gem gem 'figaro' zu deinem Gemfile hinzu und führe das bundle install . Führen Sie dann das bundle exec figaro install . Dadurch wird config / application.yml erstellt und zu Ihrer .gitignore-Datei hinzugefügt, sodass es nicht zur Versionskontrolle hinzugefügt wird.

Sie können Ihre Schlüssel in application.yml in diesem Format speichern:

SECRET_NAME: secret_value

Dabei sind SECRET_NAME und secret_value der Name und der Wert Ihres API-Schlüssels.

Sie müssen diese Geheimnisse auch in config / secrets.yml benennen. Sie können in jeder Umgebung unterschiedliche Geheimnisse haben. Die Datei sollte so aussehen:

development:
  secret_name: <%= ENV["SECRET_NAME"] %>
test:
  secret_name: <%= ENV["SECRET_NAME"] %>
production:
  secret_name: <%= ENV["SECRET_NAME"] %>

Die Art und Weise, wie Sie diese Schlüssel verwenden, ist unterschiedlich. some_component in der Entwicklungsumgebung benötigt Zugriff auf secret_name . In config /virones / development.rb würden Sie Folgendes eingeben:

Rails.application.configure do
  config.some_component.configuration_hash = {
    :secret => Rails.application.secrets.secret_name
  }
end

Angenommen, Sie möchten eine Produktionsumgebung auf Heroku einrichten. Dieser Befehl lädt die Werte in config /virones / production.rb in Heroku hoch:

$ figaro heroku:set -e production


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow