Amazon S3 php类无需凭据即可运行

时间:2016-09-08 14:28:53

标签: php amazon-web-services amazon-s3

我将在我们的项目中集成Amazon S3存储桶服务。我正在使用此处列出的PHP类。 https://github.com/tpyo/amazon-s3-php-class

我在其中使用'putObjectFile'方法&它工作正常。

问题:现在,当我在没有传递安全凭证的情况下使用此类时。

赞,$s3 = new S3();

它也是完美的,不应该。

所以,我不知道,哪些设置仍然存在于桶中。只有当我通过完美的证书时,它才有效。

这是我的存储桶政策

{ "Id": "POLICY_ID", "Version": "2012-10-17", "Statement": [ { "Sid": "SID_ID", "Action": "s3:*", "Effect": "Allow", "Resource": "arn:aws:s3:::BUCKET_NAME/*", "Principal": "*" } ] }

1 个答案:

答案 0 :(得分:0)

您是否在具有IAM角色的ec2实例上托管代码,该角色为ec2实例提供对s3存储桶的完全访问权限。这允许您在没有凭据的情况下访问存储桶。

来自AWS documention

  

如果您未明确向客户端对象提供凭据且没有可用的环境变量凭据,则SDK会尝试从Amazon EC2实例元数据服务器检索实例配置文件凭据。只有在已配置了IAM角色的Amazon EC2实例上运行时,这些凭据才可用。