gpt4 book ai didi

google-app-engine - 使用 OpenID 在应用引擎中保护 remote_api

转载 作者:太空宇宙 更新时间:2023-11-03 15:17:27 25 4
gpt4 key购买 nike

我之前问过一个 question关于将 App Engine 的 remote_api 与 openID 一起使用,答案很有效,既安全又不安全。然而,不久之后的某个时候,App Engine 中的某些内容发生了变化,解决方案不再安全运行 - 即以下内容

remote_api_stub.ConfigureRemoteDatastore(app_id=app_id, path='/remote_api', auth_func=auth_func, servername=host, secure=True)

停止工作(总是返回 302),我需要删除安全参数才能让它工作。

release of the 1.3.5 SDK promise “远程 API 命令可以通过 HTTPS 或 HTTP 发送”,这让我感到困惑,因为我的印象是提供“secure=True”参数已经给了我这个,基于 this discussion .

我怀疑是此功能的发布导致“安全”论点停止工作。所以我的问题的第一部分 - 在 1.3.5 发布之前,我实际上是通过使用“secure=True”参数安全地运行 remote_api 命令吗?

一旦 cookie hack 停止安全工作,我尝试了同一问题中列出的 Nick Johnson 的解决方案,但同样,我无法提供“secure=True”,得到相同的 302 响应。

要使用 openID 安全地运行 remote_api,我需要做什么? 1.3.5 是否包含与此相关的新功能,我该如何使用它们?干杯,

科林

最佳答案

关注这个

http://code.google.com/intl/en-US/appengine/articles/openid.html

WARNING: at the time of this writing, OpenID is not supported if your app runs in secure mode using HTTPS.

问候 this在 1.3.7 版本的最新修订中

def ConfigureRemoteDatastore(app_id,
path,
auth_func,
servername=None,
rpc_server_factory=appengine_rpc.HttpRpcServer,
rtok=None,
secure=False):
"""Does necessary setup to allow easy remote access to an AppEngine datastore.

Either servername must be provided or app_id must not be None. If app_id
is None and a servername is provided, this function will send a request
to the server to retrieve the app_id.

Args:
app_id: The app_id of your app, as declared in app.yaml.
path: The path to the remote_api handler for your app
(for example, '/remote_api').
auth_func: A function that takes no arguments and returns a
(username, password) tuple. This will be called if your application
requires authentication to access the remote_api handler (it should!)
and you do not already have a valid auth cookie.
servername: The hostname your app is deployed on. Defaults to
<app_id>.appspot.com.
rpc_server_factory: A factory to construct the rpc server for the datastore.
rtok: The validation token to sent with app_id lookups. If None, a random
token is used.
secure: Use SSL when communicating with the server.

那么,你用新的 sdk 试过了吗?

关于google-app-engine - 使用 OpenID 在应用引擎中保护 remote_api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3226880/

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