लापता साख में config कोशिश कर रहा है जब करने के लिए डाल करने के लिए वस्तु s3 बाल्टी

0

सवाल

मैं मिल गया है एक एक्सप्रेस सेवा है कि लिखने के लिए कोशिश कर के लिए एक वस्तु एक s3 बाल्टी लेकिन मैं कर रहा हूँ निम्न त्रुटि:

लापता साख में config

मैं मान रहा हूँ मेरे एडब्ल्यूएस भूमिका स्थानीय स्तर पर सेट जो मेरी साख में .aws/credentials फिर में मेरे Dockerfile मैं कर रहा हूँ उन्हें नकल में कंटेनर.

RUN mkdir "/home/node/.aws" && touch "/home/node/.aws/config" && touch "/home/node/.aws/credentials"
RUN echo "${AWS_CREDENTIALS}" > "/home/node/.aws/credentials"

दस्तावेज कहते हैं:

एसडीके स्वचालित रूप से पता लगाता है एडब्ल्यूएस साख के रूप में सेट चर में अपने पर्यावरण और उन्हें का उपयोग करता है के लिए एसडीके अनुरोध को नष्ट करने की जरूरत है प्रबंधन साख में अपने आवेदन. पर्यावरण चर है कि आप सेट करने के लिए अपने क्रेडेंशियल्स प्रदान कर रहे हैं:

AWS_ACCESS_KEY_ID

AWS_SECRET_ACCESS_KEY

AWS_SESSION_TOKEN (वैकल्पिक)

तो मैं करने की जरूरत नहीं है मैन्युअल रूप से प्रबंधित अपने क्रेडेंशियल्स का उपयोग करते समय एसडीके?

वर्तमान में कोड के लेखन के लिए के लिए s3 बाल्टी:

import s3 from 'aws-sdk/clients/s3';

const s3Client = new s3({region: process.env['region']});

async upload() {
   const params = {
      Bucket: process.env['bucket'],
      Key: 'test.json',
      Body: somejsonfile
   }

   const res = s3Client.upload(params).promise();
   return results;
}
1

सबसे अच्छा जवाब

0

है नोड सही है कि उपयोगकर्ता इस पर अमल कोड?

फ़ाइल /home/node/.aws/credentials की तरह लग रहा है कुछ की तरह है कि:

[default]
aws_access_key_id = <AAK>
aws_secret_access_key = <ASK>

डिबग करने के लिए, आप की कोशिश कर सकते हैं निम्नलिखित का प्रयास करें: आप की कोशिश कर सकते हैं जोड़ने के लिए अपने एडब्ल्यूएस साख में सीधे कोड की तरह है कि:

AWS.config.update({
    accessKeyId: "<AAK>",
    secretAccessKey: "<ASK>",
    "region": "<REGION>"
});

वैकल्पिक रूप से, आप कर सकते हैं नष्ट करने की कोशिश /home/node/.aws/credentials फ़ाइल और स्थानांतरित करने के लिए क्रेडेंशियल्स /home/node/.aws/config फाइल के बजाय:

[default]
region=<REGION>
output=json
aws_access_key_id = <AAK>
aws_secret_access_key = <ASK>

और वैकल्पिक रूप से, आप की कोशिश कर सकते हैं जोड़ने के लिए साख और क्षेत्र के रूप में पर्यावरण चर में अपने Dockerfile:

ENV AWS_ACCESS_KEY_ID=<AAK>
ENV AWS_SECRET_ACCESS_KEY=<ASK>
ENV AWS_DEFAULT_REGION=<REGION>
2021-11-25 08:53:02

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में