2016-09-16 18 views
0

私は金融機関で働き、セキュリティ上の理由から私の雇用主はaccess key idaccess key secretをAWSアカウントに与えることはできません。つまり、aws-sdkは使用できません。HTTP PUTを使用してAmazon S3にファイルをアップロード

次のオプションとして、access key idaccess key secretを必要とするAWS-SDKを使用せずにHTTP PUTを使用して公開S3バケットにファイルをアップロードすることは可能ですか?

私はこの答えを見ていた:How to upload a file using a rest client for node

をそして、このアプローチを考えていた:

var request = require('request'); 

var options = { 
    method: 'PUT', 
    preambleCRLF: true, 
    postambleCRLF: true, 
    uri: 'https://s3-ap-southeast-2.amazonaws.com/my-bucket/myFile.pdf', 
    multipart: [ 
     { 
      'content-type': 'application/pdf' 
      body: fs.createReadStream('/uploads/uploaded-file.pdf') 
     } 
    ] 
} 

request(options, function(err, response, body){ 

    if(err){ 
     return console.log(err); 
    } 

    console.log('File uploaded to s3'); 
}); 

は、その仕事はもらえますか?

+2

にファイルをアップロードすることはできませんこれらなしで、必須です*セキュリティのための私の雇用者は、AWSアカウントへのアクセスキーIDとアクセスキーの秘密を与えることができない理由があります。*やめる。これは真剣に欠陥のある前提です。 "the"(単一の)アクセスキー/秘密はありません。必要なだけ多くの鍵と付随する秘密を作成することができ、それぞれに独自の権限があります。他のAWSアカウントが所有するキーに権限を委任することもできます。パブリックに書き込み可能なバケットを使用することは意味がありません。 –

答えて

1

上記のコードは、カスタムストレージ(公開済みである必要があります)をAWSストレージ用に作成していない場合にのみ機能します。 AWSのストレージaccess key idaccess key secretについては

は、ストレージ

+0

@Supraj vを明確にしてくれてありがとう – ChrisRich

関連する問題