我们有一个可以将文件上传到S3的网络应用程序。为此,需要一个配置文件,其中包含访问密钥ID和我的AWS账户的访问密钥。
我不是运行Web应用程序的框的系统管理员。所以基本上这个人可以抓住我的访问密钥,例如启动,停止和终止EC2实例等等。
在这种情况下,如何保密秘密密钥?
编辑:澄清一下,这不是不信任系统管理员,否则这样的人就无法获得他所维护的方框的root权限。信任系统管理员并不意味着我必须向他/她提供我的信用卡详细信息,我房子和汽车的钥匙等等。这太荒谬了。
这就是,亚马逊在概述安全流程(http://developer.amazonwebservices.com/connect/entry.jspa?externalID=1697)时提到:
“在EC2中,主机管理员和云管理员可以是独立的人员,允许强制实施双人规则安全策略。”
如果主机管理员需要访问密钥才能上传到S3,我看不出这两者是如何分开的。
答案 0 :(得分:5)
很遗憾,我没有时间在此处发布详细说明,但我强烈建议您查看如何设置policies for a bucket和access policy language。您应该能够仅从特定IP地址(与您的EC2实例关联)允许未经身份验证的上传到给定存储桶。您还可以创建第二个AWS账户,除了上传到该存储桶外,根本无法访问。这样,即使他们的管理员用你的信用卡跑了,他们也不会得到任何有用的东西。
答案 1 :(得分:2)
我不相信你可以。如果系统管理员想要你的密钥,并且拥有对该计算机的root访问权限,他们将能够获得它。
答案 2 :(得分:1)
绝对应该(保守你的密钥)。
您应该提供另一种方法将文件上传到您的服务器。我认为S3允许您创建帐户,如果您只有一个EC2框,您可以创建一个新帐户或安装FTP服务器进行上传。
答案 3 :(得分:0)
你不能相信的情况 管理员很糟糕。设置自己的服务器。
你无法向root隐藏!