比如 Ruby China 用的是 cookie_store,并且 secret key 现在是知道的,如:https://github.com/ruby-china/ruby-china/blob/master/config/initializers/secret_token.rb
https://github.com/ruby-china/ruby-china/blob/master/config/initializers/secret_token.rb
是不是就可以逆向计算出任意用户的 cookie?
由于 Ruby China 是用了 Devise,假如有最简单的 Rails 项目,没有使用这个 gem,是否可以呢?
部署的时候 secret_token 已经换过了。如果知道的话可以伪造 session。
早换了
release = code base + config
@hooopo 创建项目时就把 session key 放到 gitignore 里,例如...
#4 楼 @luikore
nyara 的目标是什么?
PS. 又歪楼了。
#3 楼 @hooopo
是的,我想说的也是这一点。 如果有类似 config.yml.default 这样的处理,可能更好,否则外人并不知道部署这个应用有哪些要注意的问题 似乎 setup.rb,也么有涉及到这一点
config.yml.default
setup.rb
不过 capfile 做了处理,也算给了"这个东西需要覆盖掉"的提示...
#6 楼 @amei config.yml.default 不太好吧?有人会以为改了文件名就好了,其实要改的是内容。另外可以用脚本去生成的文件不用加 .example 和 .default 了吧..
.example
.default
#5 楼 @hooopo 主要目标是跑 benchmark 和 2... 周边生成工具就是个新版 simba
#7 楼 @luikore
类似 .example 和 .default 这样的文件,我觉得主要的作用还是提醒人:必须配置什么;可以配置什么
#7 楼 @luikore #5 楼 @hooopo
好吧,simba 昨天就准备再来一发了,也该吃午饭了..
simba
午饭
我是这样处理的:
secret_token.rb secret_token.rb.example
真实文件进 gitignore, .example 文件进 repo, readme 里写明部署时需要重置这个文件。
可以放在 WEB 服务器的环境变量的
关于楼主的疑问,推荐两篇文章
延伸阅读
其实也是给自己一个提醒
secret_token 就是一个共享公钥,通过这个公钥加密解密 cookie
最近在看《改变未来的 9 大算法》,通俗易懂的好书,推荐大家看一看,其中第二个算法就是公钥加密
公钥加密