Omniauth ID を使用した Rails 4 アプリケーションを使用していますが、本番環境では、一部のユーザー (少数) に対して次のエラーが発生しました。
BCrypt::Errors::InvalidHash: invalid hash
メソッド hash_valid を使用して、すべての ID password_digest をテストしました。
BCrypt::Password.valid_hash?(identity.password_digest)
そして、すべて良いです。
したがって、問題はユーザーが指定したパスワードに起因すると思いますが、どこにあるのかはわかりませんが、開発中にエラーを再現できません。
ログインのフォームは基本的なものです。
= form_tag "/auth/identity/callback?origin=#{request.original_url}", class: "simple_form" do
.form-group.string
= text_field_tag :auth_key, nil, class: "string form-control", placeholder: "Email", autofoucs: true
.form-group.password
%div
= password_field_tag :password, nil, placeholder: "Password"
%p= submit_tag "Sign in"
任意のアイデア、ありがとう?