我正在尝试将文件上传到Amazon S3,然后下载它。该文件已加载但我无法得到它bаск。它看起来像是权限问题。
我的Bucket权限:
Grantee: mgalex (List, Update/Delete, View Permissions, Edit Permissions)
Grantee: Any Authentificated AWS User (List, Update/Delete, View Permissions)
文件是使用权限创建的:
Grantee: mgalex (Open/Download, View Permissions, Edit Permissions)
通过“Any Auttiftifated AWS User”权限上传的文件。我知道正确的权限必须只是“mgalex”。但没有受让人“任何认证的AWS用户”我有一个错误(AccessDenied)。 告诉我,如何设置正确的权限?
我使用Laravel
答案 0 :(得分:0)
权限看起来没问题。你需要授权。尝试这样的事情。您需要在database.php上定义s3凭据
$disk = Storage::disk('s3');
$client = $disk->getDriver()->getAdapter()->getClient();
$command = $client->getCommand('GetObject', [
'Bucket' => 'path/to/your/bucket',
'Key' => 'filename.jpg'
]);
$request = $client->createPresignedRequest($command, '+5 minutes'); // the url is valid for 5 mins
echo (string) $request->getUri();