如何在我的应用程序中存储我的Amazon Credentials?

时间:2010-08-29 02:42:18

标签: amazon-s3

我正在创建一个访问Amazon S3的应用程序。

但是我应该将Amazon S3登录凭据(访问密钥ID和秘密访问密钥)放入客户将使用的.exe中吗?

DropBox使用Amazon S3,但他们如何存储登录凭据?当我向DrobBox发送文件时,该文件是否首先进入他们的服务器,然后他们的服务器使用他们的凭据登录到S3?

我总是可以混淆我的.exe但我仍然非常谨慎地将我的Amazon S3信息放入.exe。

有任何想法或建议吗?

感谢。

2 个答案:

答案 0 :(得分:2)

您可以考虑实施自己的服务器端身份验证层,该层将对用户和签名请求进行身份验证,

需要亚马逊s3凭证才能签署aws请求。你可以在服务器端这样做。

例如:

  1. 您的应用使用用户凭据向您的服务器发送请求
  2. 您的服务器端代码检查用户凭据并签署aws请求
  3. 您的应用向亚马逊发送已签名的请求

答案 1 :(得分:-1)

你是对的。我不知道有任何完全安全的方法将您的密钥包含在本地安装的应用程序中。 Web等价物(我更熟悉)将是一个javascript(所以客户端)小部件,需要携带一些凭据......而且没有办法做到这一点。

我认为您提到的解决方案(仅使用您的服务器与S3交互)可能是唯一的方法。