Rails CookieStore默认是防篡改吗?

时间:2013-05-28 18:06:18

标签: ruby-on-rails

ActionController Rails Guide说:

  

Cookie数据经过加密签名,以防止篡改,   但它没有加密,所以任何有权访问它的人都可以阅读它   内容但不编辑它(Rails不会接受它,如果它已经   编)。

These docscookies.signed[:user_id] = current_user.id ...

  

[设置]一个签名的cookie,防止用户篡改它   值。该cookie由您的应用程序的config.secret_token签名   值。创建新的时,Rails默认生成此值   Rails app。

第一个引用看起来好像cookie数据通常是防篡改的,而第二个引用表明除非你添加.signed,否则数据可能被篡改。这是什么?

1 个答案:

答案 0 :(得分:3)

文档正在谈论两件不同的事情。

  1. 如果您使用会话Cookie,则会进行签名。 (在Rails 4中,您可以选择加密和签名。)
  2. 如果您致电signed,可以签署其他Cookie。