我尝试在发送到S3(客户端加密)之前加密我的文件。但是文件没有正确上传。它会打开并显示错误。请指导可能存在的问题。 我正在使用aws-sdk版本3。
这是我的代码:
s3 = Aws::S3::Encryption::Client.new(encryption_key: Rails.application.secrets.s3_client_key)
bucket_name = "my-bucket"
key = "my_records/record_1.jpg"
File.open('file_path', 'rb') do |file|
s3.put_object(
bucket:bucket_name,
key:key,
body:file
)
end
答案 0 :(得分:0)
看起来您正试图通过浏览器查看加密文件。
http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
使用客户端加密,您需要在检索对象后解密。浏览器无法为您解密。
如果希望在S3中静止加密对象,可以使用服务器端S3。
如果您使用SSL浏览器,它将在传输过程中加密,从那里它将被解密,浏览器将显示图像。
希望它有所帮助。