RT.
This is my s3's filesystem configure:
's3' => [
'driver' => 's3',
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_REGION'),
'bucket' => env('AWS_BUCKET'),
],
And this is my composer.json:
"require": {
"laravel/framework": "5.1.*",
"barryvdh/laravel-ide-helper": "~2.0",
"predis/predis": "~1.0",
"guzzlehttp/guzzle": "~5.0",
"league/flysystem-aws-s3-v3": "~1.0",
"raven/raven": "0.12.*"
},
And this is my s3's bucket policy:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DenyUnEncryptedObjectUploads",
"Effect": "Deny",
"Principal": {
"AWS": "*"
},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::*****bucket_name*****/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
}
}
]
}
Yes, I used "s3:x-amz-server-side-encryption": "AES256" as my PutObject's condition, but I wanna use like this code:
Storage::disk('s3')->put('test.log','123');
But when I run it, I will got response like this:
[Aws\S3\Exception\S3Exception]
Error executing "HeadObject" on "http://ift.tt/1MOEmc2"; AWS HTTP error: Client error response [url]http://ift.tt/1MOEmc2 [status code] 403 [reason phrase] Forbidden (client): 403 Forbidden (Request-ID: 39C30C8512E5ED16) -
[GuzzleHttp\Exception\ClientException]
Client error response [url] http://ift.tt/1MOEmc2 [status code] 403 [reason phrase] Forbidden
So, how can I do this? Thanks!
Aucun commentaire:
Enregistrer un commentaire