問題タブ [bcrypt-ruby]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - CNAME DNS を使用すると、IE で bcrypt-ruby gem を使用した Rails 認証が失敗する (警告: CSRF トークンの信頼性を検証できません)
Amazon EC2 でホストされている Rails アプリケーションがあります。このアプリケーションは、Rails 3.1 で導入された has_secure_password 認証機能 (Railscasts エピソード 250 で説明) を使用します。この機能は、bcrypt-ruby gem によって有効になります。
アプリケーションを指すように GoDaddy CNAME レコードを設定します。その後、DNS を介してアプリケーションを呼び出すと、認証のログイン機能は Chrome と Mozilla で正常に機能します。ただし、IE および Safari の場合、ログイン フォームは空白に戻り (有効な資格情報が指定されている場合)、スタック トレース内に次のエラーが表示されます。
警告: CSRF トークンの信頼性を検証できません
興味深いことに、IE で同じブラウザーで別のタブをポップアップし、EC2 正規名を介してアプリケーションを呼び出すと、認証は正常に機能します。そして、最初のブラウザも正しく認証されます。
代わりに A レコードを設定する必要がありますか? Rails 3.1 以降の認証でこの動作を見たことがありますか?
注: application.html ヘッダー内に <%= csrf_meta_tags %> があります。
ruby-on-rails - Rails と Bcrypt を使用した新しいユーザー フォーム
私の小さな Rails アプリケーションでは、bcrypt を使用してユーザーのパスワードを保存時にハッシュしています。ただし、新しいユーザー フォームをロードするときに、パスワードの「無効なハッシュ」にヒットしました。
これは新しいパスワードを作成しないため、無効になります。これを解決するために、私は使用してみました
これはユーザー オブジェクトを必要としないため、作成アクションで作成できます。nil
ただし、エラー処理には引き続き User オブジェクトが必要であり、エラーがスローされます
これを行うには「正しい」方法が必要だと思います。誰でも私を啓発できますか?
私のユーザーモデルは次のとおりです。
ruby-on-rails - 送信後に認証が失敗する - Rails 4
簡単な認証・登録のRubyアプリを作ろうとしています。暗号化に BCrypt gem を使用していますが、いくつかの問題が発生しています。送信ボタンを押すとスローされます
わかりましたので、このコードはモデルからコントローラーに配置する必要があることを赤くしましたが、それは私にこれを与えました
rake db:migrate とアプリの再起動も git repo を試しました: https://github.com/pumpurs/auth
(コードが話している)
コントローラ:
モデルファイル:
ruby-on-rails - bcrypt ruby gem が正しくインストールされないのはなぜですか?
bcrypt-ruby v. 3.0.1 を取り込もうとしています。次のように、gem ファイルに gem を入力します。
次に、ターミナルに移動して実行します。
次の応答が返されます。
私はRubyとRailsの両方に非常に慣れていないため、これを修正する方法がわかりません. 同様の質問がある他のスタックオーバーフローページを見たことがありますが、どれも私を助けることができませんでした. 最近、Mountain Lion にアップグレードしましたが、これが問題になる可能性があると言われました。RVM を使用して Ruby をアンインストールしてから再インストールするように言われました。私はそれを試しましたが、うまくいきませんでした。
助けてください。ありがとうございました。
ruby-on-rails - Railsパスワードはbcryptポータブルで生成されますか?
Railsに移植している数千人のユーザーを持つ既存のWebアプリケーションがあります。このアプリを書き直してリファクタリングするとき、開発、テスト、および運用の目的で、任意の数の異なるサーバーで実行する必要がある場合があります。
ユーザー モデルで Rails の組み込み has_secure_password メソッドを使用していますが、パスワード データの移植性が心配です。データベースのコンテンツをマシンからマシンに移動して、さまざまな環境でテストする必要があります。各環境で同じユーザーとパスワードのセットを使用してユーザー認証機能をテストできることが非常に重要です。
これまでのところ、bcrypt-ruby が Rails とどのように連携するかについての答えを見つけるのは簡単has_secure_password
ですが、何週間も検索しても明確な答えは見つかりませんでした。
WorkFactor has_secure_password
+ Salt + HashedPassword が連結されてpassword_digest
データベース列に保存される場合、他のマシンに移動した場合 (他のマシンが Unix ライクな OS で Rails を実行していると仮定して)、そのハッシュを再生成して確実に比較できますか?
または別の言い方をすれば、bcrypt-ruby パスワードは Rails のhas_secure_password
ポータブルで生成されますか?
フォローアップの質問: ソルトが常にランダムに生成される場合 (同じパスワードが異なるハッシュを使用するのを見たことがあるので、パスワード自体のテキストからソルトが作成されたとは思わない)、Rails アプリはどのようにして確実にログインフォームの送信時にパスワードを再ハッシュし、データベースにあるものと比較します。明らかに、それを比較するには、最初に塩が何であるかを知る必要があります。それはどのように行うのですか?
ruby-on-rails - コンソールでは動作するが Web サイトでは動作しない作成 - ruby on rails
パスワード(bcrypt-ruby)を追加する前に正常に機能していたアプリに顧客を登録するためのフォームがあります。現在、フォームが送信されたときに顧客は作成されませんが、まったく同じ値を使用してコンソールから作成すると、問題なく機能します。エラーメッセージは表示されず、トランザクションのロールバックのみが表示されます(唯一の奇妙なことは、許可されていないパラメーターです:password、password_confirmationですが、重要な場合はidkです)。現在標準のstrong_paramsの代わりに、protected_attributes gemを使用しています。POST 経由ではなくコンソールで動作するのはなぜですか? bcrypt を使用する必要があるか、本当にばかげたものを見逃していますが、私の研究では答えが見つかりませんでした。助けてください:s
モデル:
コントローラー作成アクション:
終わり
形:
サーバー出力: