webentwicklung-frage-antwort-db.com.de

Erstellen Sie neue Rails 5-Anmeldeinformationen für den Klon

Problem Ich erstelle eine Rails 5.2-Vorlage . Ich habe ein neues Projekt erstellt, das eine Fork der Vorlage ist. Ich möchte nicht dasselbe config/master.key verwenden, da dies für X andere Projekte verwendet werden würde. Gibt es eine Möglichkeit, ein neues Schlüsselpaar aus config/credentials.yml.enc zu generieren? Auf diese Weise könnte ich ein config/credentials.yml.enc.sample einfügen und sie Rails credentials:new ausführen oder etwas kopieren und den Inhalt kopieren?

Ich kann nichts in der Dokumentation oder bei google finden. Suchen Sie danach und meine Alternative besteht darin, in allen öffentlichen Projekten denselben Schlüssel zu verwenden:

7
Myk Klemme

wie hier beschrieben: https://blog.eq8.eu/til/Rails-52-credentials-tricks.html

Schlüssel neu generieren

Derzeit gibt es keine Funktion zum Bearbeiten des Passworts. Sie müssen den Originalinhalt der Anmeldeinformationen kopieren, die enc-Dateien entfernen und die Datei mit den neuen Anmeldeinformationen (Quelle) neu generieren.

  • schritt 1 Kopieren Sie den Inhalt der ursprünglichen Anmeldeinformationen. Rails-Anmeldeinformationen: show
  • schritt 2 Verschieben Sie config/credentials.yml.enc und config/master.key (mv config/credentials.yml.enc ./tmp/ && mv config/master.key ./tmp/)
  • schritt 3 Führen Sie EDITOR = vim Rails-Anmeldeinformationen aus: Bearbeiten
  • schritt 4 Fügen Sie kopierte Werte aus den ursprünglichen Anmeldeinformationen ein Schritt 5 Speichern und bestätigen Sie config/credentials.yml.enc note! EDITOR = vim Rails-Berechtigungsnachweise: Die Bearbeitung funktioniert möglicherweise nicht, wenn in einer Datei ein Berechtigungsnachweiswert erforderlich ist (z. B. in config/database.yml`).
4
equivalent8

https://github.com/Rails/rails/blob/master/railties/lib/Rails/commands/credentials/USAGE

Für Anwendungen, die vor Rails 5.2 erstellt wurden, werden wir automatisch Generieren Sie eine neue Berechtigungsnachweisdatei in config/credentials.yml.enc der Zum ersten Mal bin/Rails credentials:edit. Wenn Sie keine Der in config/master.key gespeicherte Hauptschlüssel wird ebenfalls erstellt.

So kann ich eine Klartextversion der verschlüsselten Datei erstellen, um anzuzeigen, welche Schlüssel erforderlich sind:

foo_api_key: 123

Sie führen bin/Rails credentials:edit aus, wodurch der Schlüssel und die verschlüsselte Datei generiert werden. Anschließend werden die Schlüssel kopiert, um sie der verschlüsselten Datei hinzuzufügen.

1
Myk Klemme