gpt4 book ai didi

php - AWS AccessDeniedException 与 Laravel for S3

转载 作者:行者123 更新时间:2023-12-05 08:57:49 25 4
gpt4 key购买 nike

当我尝试使用 Laravel 将对象放入 S3 存储桶时,我从 AWS PHP SDK 收到了 AccessDeniedException。我已经在 application/config/packages/aws/aws-sdk-php-laravel/config.php 中配置了 key 、 key 和区域。然后我尝试使用以下代码执行一个简单的 putObject:

try {
AWS::get('s3')->putObject(array(
'Bucket' => Config::get('settings.AWS_BUCKET'),
'Key' => 'hello_.txt',
'Body' => 'hi',
'ACL' => 'public-read'
));

return 'great success';
} catch (Exception $e) {
return $e;
}

正如您在开始问这个问题时所期望的那样,失败并返回类似这样的内容(请求 ID 每次都在变化):

Aws\S3\Exception\AccessDeniedException: AWS Error Code: AccessDenied, Status Code: 403, AWS Request ID: CA0E8181A5F2D740, AWS Error Type: client, AWS Error Message: Access Denied, User-Agent: aws-sdk-php2/2.7.20 Guzzle/3.9.2 curl/7.40.0 PHP/5.4.37 Laravel/4.2.17 L4MOD/1.1.0

据我所知,我只是被拒绝访问存储桶。如果我更改 key 或 secret ,我将分别收到 InvalidAccessKeyIdExceptionSignatureDoesNotMatchException。我在这里缺少什么?

最佳答案

我终于发现,如果我在 IAM 下的用户许可下添加 AmazonS3FullAccess 策略,应用程序终于可以正常工作,并且我能够创建项目并将项目上传到存储桶。

关于php - AWS AccessDeniedException 与 Laravel for S3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28866773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com