すべての権限を持つユーザーを取得しました。
{
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*"
}
]
}
aws-sdk-php-2 を使用して、バケットにオブジェクトを配置およびコピーしています。
http://docs.aws.amazon.com/aws-sdk-php-2/latest/class-Aws.S3.S3Client.html
置くコードは完璧に動作します
$client->putObject(array(
'Bucket' => 'kiosk',
'Key' => 'test/orders/test.csv',
'SourceFile' => $sourcePath,
));
https://console.aws.amazon.com/s3を介して S3 でオブジェクトが作成されたかどうかを確認した後、次のスクリプトを実行しています。
$result = $client->copyObject(array(
'Bucket' => 'kiosk',
'CopySource' => 'test/orders/test.csv',
'Key' => 'test/test.csv',
));
そして、私は致命的なエラーが発生しています:
Fatal error: Uncaught Aws\S3\Exception\S3Exception: AWS Error Code: AllAccessDisabled, Status Code: 403, AWS Request ID: XXX, AWS Error Type: client, AWS Error Message: All access to this object has been disabled, User-Agent: aws-sdk-php2/2.2.1 Guzzle/3.3.1 curl/7.19.7 PHP/5.4.13 thrown in phar:///usr/share/pear/AWSSDKforPHP/aws.phar/src/Aws/Common/Exception/NamespaceExceptionFactory.php on line 89
ファイルを手動でアップロードした後、console.aws.amazon.com/s3 をコピーしようとすると、別のエラーが表示されます。
Fatal error: Uncaught Aws\S3\Exception\AccessDeniedException: AWS Error Code: AccessDenied, Status Code: 403, AWS Request ID: XXX, AWS Error Type: client, AWS Error Message: Access Denied, User-Agent: aws-sdk-php2/2.2.1 Guzzle/3.3.1 curl/7.19.7 PHP/5.4.13 thrown in phar:///usr/share/pear/AWSSDKforPHP/aws.phar/src/Aws/Common/Exception/NamespaceExceptionFactory.php on line 89
また、次の方法でファイルとフォルダーのアクセス許可を設定しようとしていますconsole.aws.amazon.com/s3
: 被付与者: 全員、開く/ダウンロードと表示のアクセス許可、およびアクセス許可の編集
しかし、それでも同じエラーです。