我正在使用 Sinatra 和 Omniauth(特别是 google oauth2)为网站提供服务。我对哪些数据可以安全地存储在 cookie 中以及哪些数据不安全感到有些困惑。
我倾向于说authorized => true
,一旦我确认 AuthHash 包含访问令牌,我应该简单地在 cookie 中存储一个字段。cookie 使用Rack::Sesssion::Cookie
和进行保护:secret => "some-really-long-and-strong-password"
。这种想法正确吗?
此外,如果有人想入侵网站(即登录而不实际登录),他们需要做的就是成功破解 cookie 的秘密并用 制作一个假 cookie authorized => true
,对吗?
我看不到存储存储在凭据部分中的实际访问密钥的任何价值Omniauth::AuthHash
,因为这似乎是敏感信息......