是否可以在没有AWS CLI的情况下从AWS s3下载文件?在生产服务器中,我需要下载一个S3存储桶中的配置文件。
我当时在考虑让Amazon Systems Manger运行一个脚本,该脚本将从S3下载配置(YAML文件)。但是我们不想在生产机器上安装AWS cli。我该怎么办?
答案 0 :(得分:2)
您将需要某种程序来调用Amazon S3 API来检索对象。例如,PowerShell脚本(使用AWS Tools for Windows PowerShell)或使用AWS开发工具包的Python脚本。
您可以选择生成Amazon S3 pre-signed URL,这将允许通过常规HTTPS调用(例如curl
)从Amazon S3下载私有对象。使用适用于Python的AWS开发工具包可以轻松完成此操作,或者您可以自己编写代码而无需使用库(这有点复杂)。
在上述所有示例中,您都需要为脚本/程序提供一组IAM凭证,以便通过AWS进行身份验证。
答案 1 :(得分:0)
只需为任何 C# 代码爱好者添加注释即可解决 .Net 问题
首先编写(C#)代码以字符串形式下载私有文件
function downloadPrivateFile() {
$.ajax({url: 'DownloadPrivateFileS3?fileName=' + fileName, success: function(result){
var link = this.document.createElement('a');
link.download = fileName;
link.href = "data:application/octet-stream;base64," + result;
this.document.body.appendChild(link);
link.click();
this.document.body.removeChild(link);
}});
}
第二次编写 JQuery 代码以将字符串下载为 Base64
{{1}}
从 HTML/C#/JQuery 的任何地方调用 downloadPrivateFile 方法 -
享受快乐的编码和复杂问题的解决