

 [適用於 JavaScript 的 AWS SDK V3 API 參考指南](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/)詳細說明 第 3 版 適用於 JavaScript 的 AWS SDK (V3) 的所有 API 操作。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 Node.js 中設定登入資料
<a name="setting-credentials-node"></a>

我們建議在本機開發 的新使用者，而不是由其雇主提供身分驗證方法來設定 AWS IAM Identity Center。如需詳細資訊，請參閱[使用 進行 SDK 身分驗證 AWS](getting-your-credentials.md)。

在 Node.js 中將登入資料提供給軟體開發套件有幾種方法。有些方法比較安全，有些在開發應用程式時更方便。在 Node.js 中取得登入資料時，請小心依賴多個來源，例如環境變數和您載入的 JSON 檔案。您可以變更程式碼執行所用的許可，而不需了解發生的變更。

適用於 JavaScript 的 AWS SDK V3 在 Node.js 中提供預設登入資料提供者鏈結，因此您不需要明確提供登入資料提供者。預設[登入資料提供者鏈結](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html#credentialProviderChain)會嘗試在指定優先順序中從各種不同來源解析登入資料，直到其中一個來源傳回登入資料為止。您可以在[此處](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-credential-providers/#fromnodeproviderchain)找到適用於 JavaScript V3 的 SDK 的登入資料提供者鏈結。

## 登入資料提供者鏈結
<a name="credchain"></a>

所有 SDKs 都有一系列位置 （或來源） 可供他們檢查，以取得可用於向 提出請求的有效登入資料 AWS 服務。找到有效的憑證後，系統就會停止搜尋。此系統化搜尋稱為預設登入資料提供者鏈結。

對於鏈結中的每個步驟，有不同的方法來設定值。直接在程式碼中設定值一律優先，接著設定為環境變數，然後在共用 AWS `config`檔案中設定。如需詳細資訊，請參閱 *AWS SDKs 和工具參考指南*中的[設定優先順序](https://docs.aws.amazon.com/sdkref/latest/guide/settings-reference.html#precedenceOfSettings)。

*AWS SDKs和工具參考指南*提供 AWS SDKs和 所使用的開發套件組態設定資訊 AWS CLI。若要進一步了解如何透過共用 AWS `config`檔案設定 SDK，請參閱[共用組態和登入資料檔案](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)。若要進一步了解如何透過設定環境變數來設定 SDK，請參閱[環境變數支援](https://docs.aws.amazon.com/sdkref/latest/guide/environment-variables.html)。

若要使用 驗證 AWS， 會依照下表列出的順序 適用於 JavaScript 的 AWS SDK 檢查登入資料提供者。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/sdk-for-javascript/v3/developer-guide/setting-credentials-node.html)

如果您遵循建議的方法讓新使用者開始使用，您可以在開始使用主題[使用 進行 SDK 身分驗證 AWS](getting-your-credentials.md)期間設定 AWS IAM Identity Center 身分驗證。其他身分驗證方法適用於不同的情況。為了避免安全風險，我們建議您一律使用短期登入資料。如需其他身分驗證方法程序，請參閱*AWS SDKs和工具參考指南》中的身分*[驗證和存取](https://docs.aws.amazon.com/sdkref/latest/guide/access.html)。

本節的主題說明如何在 Node.js 中載入登入資料。

**Topics**
+ [登入資料提供者鏈結](#credchain)
+ [從 Amazon EC2 的 IAM 角色載入 Node.js 中的登入資料](loading-node-credentials-iam.md)
+ [載入 Node.js Lambda 函數的登入資料](loading-node-credentials-lambda.md)

# 從 Amazon EC2 的 IAM 角色載入 Node.js 中的登入資料
<a name="loading-node-credentials-iam"></a>

如果您在 Amazon EC2 執行個體上執行 Node.js 應用程式，您可以利用 Amazon EC2 的 IAM 角色自動提供登入資料給執行個體。如果您將執行個體設定為使用 IAM 角色，開發套件會自動選取應用程式的 IAM 登入資料，無需手動提供登入資料。

如需將 IAM 角色新增至 Amazon EC2 執行個體的詳細資訊，請參閱 [Amazon EC2 的 IAM 角色](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html)。

# 載入 Node.js Lambda 函數的登入資料
<a name="loading-node-credentials-lambda"></a>

建立 AWS Lambda 函數時，您必須建立具有執行函數許可的特殊 IAM 角色。此角色稱為*執行角色*。設定 Lambda 函數時，您必須指定您建立的 IAM 角色做為對應的執行角色。

執行角色會提供 Lambda 函數執行 和 呼叫其他 Web 服務所需的登入資料。因此，您不需要提供登入資料給在 Lambda 函數中寫入的 Node.js 程式碼。

如需建立 Lambda 執行角色的詳細資訊，請參閱《 *AWS Lambda 開發人員指南*》中的[管理許可：使用 IAM 角色 （執行角色）](https://docs.aws.amazon.com/lambda/latest/dg/intro-permission-model.html#lambda-intro-execution-role)。