私はRuby on Rails 3を実行しています。ユーザ認証のためにクッキー値を設定するために使用しているコードが十分に強力であるかどうかはわかります。私のモデルでは私のクッキートークンは、それをユーザー認証の目的で使用するには十分強力ですか?
私が持っている:私のコントローラで
require 'digest'
class User < ActiveRecord::Base
...
def make_cookie_id_salt(string)
secure_hash("#{self.id}--#{string}")
end
def secure_hash(string)
Digest::SHA2.hexdigest(string)
end
end
を私は持っている:
cookies.signed[:current_user_id] = { :value => [@user.id, @user.make_cookie_id_salt(@user.id)], :expires => 15.days.from_now }
が、それは十分に強いですか?ノーならば、私は(を例!作る)ことをどのように改善できますか?
ありがとうございますが、あなたはその質問に答えませんでした。 – user502052
@ user502052、彼らはあなたの質問に直接答えていないかもしれませんが、あなた自身でロールアップするよりもうまくテストされた認証ソリューションを使用するほうがよいことを伝えています。あなたが認証の専門知識が不足していて自分のことを書こうとしているのであれば、それが正しいかどうか尋ねなければならない。あなたの選択は、与えられた答えを無視して解決策を実行し、そうしたかどうかを確認し、そうでない場合はハッキングされたサイトに苦しんでいるか、代替ソリューションを見てそれらから学ぶことです。それはあなたの選択です。 –
どこが間違っていますか?私は自分のアプリケーションをほぼすべてのコードを書くことを目指しています(それは正しい方法ですか?)。私は分かりませんが、私は独自のコードを持つこと、他のプラグインや宝石とは独立していて、一貫性があり、よく知っているソフトウェアを持つ方が良いと思います。サードパーティのコードを使用する理由P.S .:アドバイスをいただきありがとうございます。 – user502052