0

正確には何をしSignedCookieJarますか?

そしてMessageEncryptor.encrypt_and_sign、それとCookieの値を使用することの違いは何ですか?

4

1 に答える 1

1

特定のクラスが何をするのかを正確に探している場合は、ソースを参照することをお勧めします。SignedCookieJarたとえば、はにありrails/actionpack/lib/action_dispatch/middleware/cookies.rbます。

aは標準のCookiejarのラッパーのように見えSignedCookieJarますが、Cookieをその親jarに設定する前に、ActiveSupport::MessageVerifier'sメソッドで署名し、親jarからCookieを取得すると、ベリファイアのメソッドが無効generateになると返されます。サイン。nilverify

違いは、データに署名MessageVerifierするだけで元のデータはそのままにしておくのに対し、署名する前にデータをさらに暗号化することです。Railsのドキュメントによると、ユースケースは次の点で異なります。MessageEncryptor

[MessageEncryptor]は、MessageVerifierと同様の状況で使用できますが、ユーザーがペイロードの値を判別できないようにする必要があります。

署名されたCookieの場合、通常はそれほど心配していません。

于 2012-06-29T15:13:10.500 に答える