GAE对第三方网站进行身份验证

时间:2010-01-02 05:47:09

标签: security google-app-engine authentication passwords

我需要安全地向第三方站点进行身份验证以进行SSL REST api呼叫。我有API调用部分工作,但我想在我的应用引擎数据存储区中保存第三方凭据,或者可能在其他地方?我不知道我该怎么做。

SSL调用如下:

credentials = base64.encodestring('%s:%s' % (username, password))[:-1]
request     = urllib2.Request(accounts_url)
request.add_header("User-Agent", user_agent)
request.add_header("Authorization", "Basic %s" % credentials)

stream   = urllib2.urlopen(request)
response = stream.read()
stream.close()

这意味着我的应用程序不幸需要知道明文密码。我对AES加密它没有意义(不是哈希 - 可逆),因为我的应用程序也需要知道解密密钥,所以如果我的应用程序被泄露,则没有添加存储明文的真正安全性。

1 个答案:

答案 0 :(得分:2)

我认为这里最安全的策略是向客户提供支持。使用GAE作为来自客户端的跨域请求的代理。我假设第三方主机有某种令牌或会话cookie,你可以在回来的路上拦截。

存储纯文本密码很可怕。

相关问题