gpt4 book ai didi

python - 安全使用 GAE 应用程序命名空间

转载 作者:行者123 更新时间:2023-12-01 06:15:11 25 4
gpt4 key购买 nike

我希望将用户映射到帐户,然后将用户定向到与其帐户对应的命名空间

查看了 appengine_config.py来自suggested example ,似乎有一些建议的方法来确定命名空间应该是什么,即

  1. 服务器名称
  2. Google Apps 域
  3. Cookie

我希望根据数据存储中的查找来选择命名空间。即

namespace = user.account.name

对于链接到帐户的某些用户对象,该帐户具有名称字段。我提出了几种方法来实现这一目标:

  1. 针对每个请求进行数据存储区查找
  2. 针对每个请求进行内存缓存查找(内存缓存过期时回退到数据存储区)
  3. 保护 Cookie 数据

数据存储查找速度会慢两度。内存缓存查找是否有此类保留?例如memcache.get('nslookup:%s' % user_id),给定一个 user_id。 (我相信 users 对象在 appengine_config.py 中按预期工作)。

或者,可以使用安全 cookie 来解决此问题。我对“安全”标志的安全性(即强制 SSL)不满意。但是,我不确定如何最好地保护 cookie 中的数据。我想对称encryption使用 GAE 中的 key 通过 PyCrypto 进行签名是开始这条道路的一种方法。虽然这种模式已经vetted ,如果您对这个建议的解决方案有任何想法,我将不胜感激。

从思想的角度来看,安全 cookie 似乎并不是最佳途径;我已经期望拥有用户身份,我所需要的只是从用户到他们的帐户的映射 - 对于每个请求的加密、发送、存储、接收和解密该映射没有逻辑基础。内存缓存选项似乎是这三个选项中最好的,但我将不胜感激您的想法和意见。我能想到使用安全 Cookie 的唯一原因是性能,或者如果 appengine_config.py 中的内存缓存访问不可用。

非常欢迎对我的假设提出想法、意见和挑战。

感谢您的阅读。

布莱恩

最佳答案

就性能而言,任何避免每个请求都需要内存缓存或数据存储查找的方法都将是最佳选择。不过,您混淆了“安全”cookie 的两个定义:cookie 规范中的“安全”标志要求 cookie 仅通过 SSL 发送,而在另一种意义上,“安全”cookie 是无法修改的用户无法察觉 - 这是此用例中最重要的。

但是,没有必要加密内容 - 您希望防止修改,而不是泄露 - 因此,如果您无法使用现有库,您可以简单地将 cookie 的 HMAC 附加到其末尾,使用您嵌入到应用程序中的 key 。在每个请求上验证 HMAC 比使用 memcache 快得多。

关于python - 安全使用 GAE 应用程序命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3610044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com