如何解决如何从s3服务器端加密客户提供的密钥转录
我在我的flask应用程序中使用boto3,以通过服务器端加密客户提供的密钥将文件上传到s3存储桶中。 我从加密的s3文件尝试了start_transcription_job,但是我有一个例外
s3_client.upload_file(filename,BUCKET,s3filename,ExtraArgs={'SSECustomerKey': KEY,'SSECustomerAlgorithm': 'AES256' })
transcribe_obj.start_transcription_job(
TranscriptionJobName=job_name,Media={'MediaFileUri': s3uri},MediaFormat=file_extension,LanguageCode='en-US'
)
例外:
botocore.errorfactory.BadRequestException: An error occurred (BadRequestException) when calling the StartTranscriptionJob operation: The S3 URI that you provided can't be accessed. Make sure your URI is valid and try your request again.
解决方法
您可以管理用于加密哪个对象的加密密钥的映射。 Amazon S3不存储加密密钥。您负责跟踪为哪个对象提供的加密密钥。
我认为问题是该对象已使用AWS不存储的密钥加密。因此,当AWS Transcribe尝试读取对象时,它无法解密内容。
似乎没有办法将密钥传递给start_transcription_job()
。
您将需要使用另一种加密方法,使AWS能够解密该对象。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。