使用直接S3上传和使用ng-file-upload进行节点签名的加密

时间:2017-05-19 23:46:39

标签: angularjs node.js encryption amazon-s3 ng-file-upload

我正在使用ng-file-upload直接上传到S3,如下例所示: Direct S3 upload and Node signing example

我已经包含了' x-amz-server-side-encryption':' AES256'在我的标题中,它与请求一起发送。

                  Upload.upload({
                      url: result.data.url, //s3Url
                      headers: { 'x-amz-server-side-encryption': 'AES256' },
                      transformRequest: function(data, headersGetter) {
                          var headers = headersGetter();
                          delete headers.Authorization;
                          return data;
                      },
                      fields: result.data.fields, //credentials
                      method: 'POST',
                      file: files[0]
                  }

文件上传成功,但上传后文件未加密。我还注意到响应标头不包含' x-amz-server-side-encryption'

这是s3配置错误吗?或者这是ng-file-upload的实现错误?

1 个答案:

答案 0 :(得分:0)

似乎这需要在我的头上完成,而不是使用服务器端加密。

如果有其他人偶然发现并想知道 - 从S3 Docs:"当使用预先签名的URL上传对象时,您是否可以强制使用SSE-S3加密对象"