簡體   English   中英

Laravel S3 - arn 和 kms 密鑰

[英]Laravel S3 - arn and kms key

客戶向我提供了以下詳細信息:-

AWS_ACCESS_KEY_ID=XXX
AWS_SECRET_ACCESS_KEY=XXX
AWS_DEFAULT_REGION=XXX
AWS_BUCKET=XXX
ARN: arn:aws:s3:::XXX
KMS Key: XXX

圖像已成功上傳到 aws 服務器。 但是當我試圖打開 url 時,訪問被拒絕。

圖片上傳代碼如下:-

$filePath = "users/" . $user_id . "/". $name;
Storage::disk('s3')->put($filePath, file_get_contents($file));
$fileName = Storage::disk('s3')->url($filePath);

是的,默認情況下,AWS S3 出於安全目的實施此限制。 您可以通過這樣做來滿足您的需求:

$publicTime = 10; // Your file will be available 10 minutes
$filePath = "users/" . $user_id . "/". $name;

// Upload file 
Storage::disk('s3')->put($filePath, file_get_contents($file));

// Generate temporary URL
$url = Storage::disk('s3')->temporaryUrl($filePath, now()->addMinutes($publicTime))

使用此方法,您可以在為文件提供公共訪問權限的同時保持 S3 存儲桶的私密性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM