2

認証情報を使用せずに、大きなファイルを Amazon S3 にアップロードしようとしています。これを使用して Octoprint 用のプラグインを作成していますが、公開されているため、コードに資格情報を入力することはできません。現在、アップロード用の私のコードは次のようになっています。

import boto3
from botocore import UNSIGNED
from botocore.client import Config

s3 = boto3.client('s3', config=Config(signature_version=UNSIGNED))

# Create an S3 client


filename = 'file.txt'
bucket_name = 'BUCKET_HERE'

s3.upload_file(filename, bucket_name, filename)

ただし、次のエラーが表示されます。

S3UploadFailedError: Failed to upload largefiletest.mp4 to BUCKETNAMEHERE/largefiletest.mp4: An error occurred (AccessDenied) when calling the CreateMultipartUpload operation: Anonymous users cannot initiate multipart uploads.  Please authenticate.

これを回避する方法はありますか、または代替ライブラリの提案はありますか? 何でも大歓迎です。

4

1 に答える 1