Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试获取对象和删除对象(PHP)时,AWS S3访问被拒绝 目标_Php_Amazon S3 - Fatal编程技术网

尝试获取对象和删除对象(PHP)时,AWS S3访问被拒绝 目标

尝试获取对象和删除对象(PHP)时,AWS S3访问被拒绝 目标,php,amazon-s3,Php,Amazon S3,使用PHP下载S3对象,并将其放入zip文件中,以便用户可以导出上载的文档 问题 当我尝试getObject或deleteObject时,会出现“AccessDenied”错误(代码512) 当我尝试使用PHP的copy()函数时,会出现“禁止”错误(代码403) 我可以使用putObject上传文件,并且可以通过URL查看文件,因此我知道s3路径是正确的。但“get”和“delete”似乎存在访问问题 安装程序 我正在运行适用于PHP的AWS SDK版本3 bucket策略有两个“语句

使用PHP下载S3对象,并将其放入zip文件中,以便用户可以导出上载的文档

问题
  • 当我尝试getObject或deleteObject时,会出现“AccessDenied”错误(代码512)
  • 当我尝试使用PHP的copy()函数时,会出现“禁止”错误(代码403)
我可以使用putObject上传文件,并且可以通过URL查看文件,因此我知道s3路径是正确的。但“get”和“delete”似乎存在访问问题

安装程序
  • 我正在运行适用于PHP的AWS SDK版本3

  • bucket策略有两个“语句”,一个用于公共网站的公共访问,另一个用于拒绝“成员”文件夹中对象的访问,除非引用URL位于特定列表中。(见下文)

  • 我已经设置了访问和密钥

  • 我已经声明了bucket名称、区域,并将签名设置为“v4”

当我尝试从受保护的“成员”文件夹中“获取”或“删除”对象时,bucket策略中是否存在导致错误的问题

或者,您是否遇到了其他可能导致这些错误的因素

{
    "Version": "2012-10-17",
    "Id": "Policy1596669767140",
    "Statement": [
        {
            "Sid": "allowPublicAccess",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::bucketname/*"
        },
        {
            "Sid": "DenyPublicAccess",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "s3:DeleteObject",
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::bucketname/members/*",
            "Condition": {
                "StringNotLike": {
                    "aws:Referer": [
                        "https://example.com/*",
                        "https://admin.example.com/*",
                        "https://dev.example.com/*"
                    ]
                }
            }
        }
    ]
}