在 appengine 上处理禁用 cookie 的简单方法是啥?
Posted
技术标签:
【中文标题】在 appengine 上处理禁用 cookie 的简单方法是啥?【英文标题】:What's an easy way to deal with disabled cookies on appengine?在 appengine 上处理禁用 cookie 的简单方法是什么? 【发布时间】:2012-01-06 03:30:10 【问题描述】:我遇到了几个禁用 cookie 的用户,因此该网站无法正常运行。我在 appengine 上使用带有 % url % 模板标签的 webapp2 和 django 1.2 模板。
我想找到一种简单的方法来解决这个问题,这不会让我最终进行大量的代码更改。访问我所有的 url 并有条件地将 ?cookie= 添加到所有这些将是一个真正的痛苦,所以我希望有一个简单的解决方案来解决这个问题。
表单上的CSRF代码也会出现问题,那你怎么办,放弃CSRF?
我可以在 urlNode 代码中做一些事情,因为我应该能够从上下文中解析 logged_in_user 对象,所以这可能会解决很多问题,除了在 ? 之后添加参数的任何地方。现在必须使用 &。总而言之,这不是一个很好的解决方案。
有谁知道更简单的方法来处理这个问题?
【问题讨论】:
你还没有解释你需要 cookie 做什么。它只是用于会话管理吗?还有什么? 是的,cookie 是用于会话管理的,它是一个 FB 应用程序,所以我不一定有用户的 Google 帐户。我在 cookie 中存储的唯一内容是 CSRF 内容和用户会话密钥。我还能用 cookie 做什么? 如果您的用户禁用了 cookie,那么很大一部分网络将被他们破坏,包括大多数其他需要身份验证的网站。告诉他们抓住并重新启用 cookie,或者停止担心它们——他们是极少数偏执的少数人。 【参考方案1】:我不建议使用 cookie 作为可选要求来构建站点,站点设计很快就会变得极其复杂,并且您可能会打开更多可以想象的安全漏洞。如果您必须支持没有 cookie 的用户,请使用 HTTP 基本身份验证来验证和识别用户。
【讨论】:
我也不是这个想法的忠实粉丝。以上是关于在 appengine 上处理禁用 cookie 的简单方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Google Appengine 设置“过期”cookie