Rails 3 / Devise: Passwort Salz wird nicht mehr erstellt?

Arbeite ich an einem Projekt für eine Weile jetzt verwendet Entwickeln für die Benutzer-Authentifizierung. Wann immer ein Benutzer angelegt wurde, es würde ein Passwort generiert Salz für Sie zusammen mit Ihren verschlüsselten Passwort.

Wie komme ich an das Ende von diesem Projekt war ich testen, Benutzer-Registrierung und bemerkte, dass meine neue Rollen waren nicht die Schaffung einer Passwort-salt in der Datenbank für diese neuen Benutzer, während meine ältere Nutzer hatten alle Salze. Der neue Benutzer kann sich anmelden in Ordnung, aber ich bin besorgt, warum Entwickeln nicht mehr schaffen Salze.

Die einzige kuriosität, mit Entwickeln, denen ich begegnete zu tun hatte, wenn ich habe ein Upgrade die Modul-und erinnere mich an die logs sagen etwas über das entfernen von encryptable wie bcrypt ist nun die Standard-Verschlüsselung, oder etwas zu diesem Effekt. Was ich so Tat...nicht sicher, ob dies hat nichts zu tun mit der aktuellen Ausgabe.

Darüber hinaus, denken vielleicht, es war mein Projekt, das war pooched, die ich erstellt eine neue Rails-Anwendung von Grund auf und fügte Entwickeln, und auch das neue Projekt nicht erstellen Salze für die Nutzer.

Gibt es eine neue Möglichkeit, im Ersinnen, einrichten Passwort Salze, oder weiß jemand, warum die Salze nicht erstellt wird, nicht mehr? Leider ist das wiki Entwickeln nicht eine ganze Menge zu dem Thema zu sagen, und Google ist eine fruchtlose Suche so weit.

...Oder ist es sogar notwendig sein, dass Salze in den ersten Platz? Scheint mehr sicher zu haben, würde ich denken.

Meine config von Benutzer/Gerät ist unten.

config/Initialisierungen/entwickeln.rb

Devise.setup do |config|

  config.mailer_sender = "[email protected]"

  require 'devise/orm/active_record'

  config.authentication_keys = [ :login ]

  config.stretches = 10

  config.encryptor = :bcrypt

  # Setup a pepper to generate the encrypted password.
  config.pepper = "79c2bf3b[...]"

end

app/models/user.rb

  devise :database_authenticatable, :registerable, :confirmable,
         :recoverable, :rememberable, :trackable, :validatable

UPDATE

War ich in der Lage, suchen Sie die Mitteilung nach dem Entwickeln wurde aktualisiert, die liest...

[DEVISE] From version 1.2, there is no need to set your encryptor to bcrypt since encryptors are only enabled if you include :encryptable in your models. To update your app, please:

1) Remove config.encryptor from your initializer;
2) Add t.encryptable to your old migrations;
3) [Optional] Remove password_salt in a new recent migration. Bcrypt does not require it anymore.

So scheint es, dass die password_salt ist veraltet, wenn Sie stick mit bcrypt, die erklärt, warum es nicht erstellt, nicht mehr. So, die Antworten, aber der andere Teil meiner Frage bleibt noch...ist das gut genug Praxis oder sollte ich gehen mit einer anderen Verschlüsselung neben bcrypt?

InformationsquelleAutor der Frage Shannon | 2011-04-09

Schreibe einen Kommentar