

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

# 使用長期登入資料來驗證 AWS SDKs和工具
<a name="access-iam-users"></a>

**警告**  
為避免安全風險，在開發專用軟體或使用真實資料時，請勿使用 IAM 使用者進行身分驗證。相反地，搭配使用聯合功能和身分提供者，例如 [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)。

如果您使用 IAM 使用者執行程式碼，則開發環境中的 SDK 或工具會使用共用 AWS `credentials`檔案中的長期 IAM 使用者憑證進行驗證。檢閱 [IAM 主題中的安全最佳實務](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp)，並盡快轉換為 IAM Identity Center 或其他暫時登入資料。

## 憑證的重要警告和指引
<a name="iam-warnings-and-guidelines"></a>

**憑證警告**
+ ***請勿***使用您帳戶的根憑證存取 AWS 資源。這些登入資料可讓未管制的帳戶存取和很難撤銷這些帳戶。
+ ***請勿***在應用程式檔案中放置常值存取金鑰或憑證資訊。如果您不小心這麼做了，則會有暴露您登入資料的風險，例如，當您上傳專案到公有儲存庫時。
+ ***請勿在***您的專案區域中放入包含憑證的檔案。
+ 請注意，存放在共用 AWS `credentials`檔案中的任何登入資料都會以純文字儲存。

**安全管理憑證的其他指引**

如需如何安全管理 AWS 登入資料的一般討論，請參閱《》中的[管理 AWS 存取金鑰的最佳實務](https://docs.aws.amazon.com/general/latest/gr/aws-access-keys-best-practices.html)[AWS 一般參考](https://docs.aws.amazon.com/general/latest/gr/)。除了討論之外，請考慮下列事項：
+ 使用適用於 Amazon Elastic Container Service (Amazon ECS) 任務的[任務 IAM 角色](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html)。
+ 使用在 Amazon EC2 執行個體上執行的應用程式的 [IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)。

## 先決條件：建立 AWS 帳戶
<a name="signup"></a>

若要使用 IAM 使用者存取 AWS 服務，您需要 AWS 帳戶和 AWS 登入資料。

1. **建立帳戶。**

   若要建立 AWS 帳戶，請參閱 *AWS 帳戶管理 參考指南*中的[入門：您是第一次 AWS 使用嗎？](https://docs.aws.amazon.com/accounts/latest/reference/welcome-first-time-user.html)。

1. **建立管理使用者。**

   避免使用根使用者帳戶 (您建立的初始帳戶) 來存取管理主控台與服務。反之，請依據 *IAM 使用者指南*的[建立管理使用者](https://docs.aws.amazon.com/IAM/latest/UserGuide/getting-set-up.html#create-an-admin)中的說明，建立管理使用者帳戶。

   建立管理使用者帳戶並記錄登入詳細資料之後，**請務必登出您的根使用者帳戶**，然後使用管理帳戶重新登入。

這些帳戶都不適用於在 上執行開發 AWS 或在 上執行應用程式 AWS。最佳實務是，您需要建立適合這些任務的使用者、許可集或服務角色。如需詳細資訊，請參閱《IAM 使用者指南》**中的[套用最低權限許可](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)。

## 步驟 1：建立 IAM 使用者
<a name="step1authIamUser"></a>
+ 按照 *IAM 使用者指南*中的[建立 IAM 使用者 (主控台)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html#id_users_create_console) 程序來建立 IAM 使用者。建立 IAM 使用者時：
  + 我們建議您選取**提供使用者對 的存取權 AWS 管理主控台**。這可讓您檢視與在視覺化環境中執行的程式碼 AWS 服務 相關的 ，例如檢查 AWS CloudTrail 診斷日誌或將檔案上傳至 Amazon Simple Storage Service，這在偵錯程式碼時很有幫助。
  + 針對**設定許可** - **許可選項**，選取**直接連接政策**，以了解如何將許可指派給此使用者。
    + 多數「入門」SDK 教學都使用 Amazon S3 服務做為範例。若要讓應用程式能夠完整存取 Amazon S3，請選取要連接至此使用者的 `AmazonS3FullAccess` 政策。
  + 您可以忽略該程序有關設定許可界限或標籤的選用步驟。

## 步驟 2：取得您的存取金鑰
<a name="stepGetKeys"></a>

1. 在 IAM 主控台的導覽窗格中，選取**使用者**，然後選取您先前建立使用者的 **User name**。

1. 在使用者頁面上，選取**安全憑證**頁面。接著，在**存取金鑰**下，選取**建立存取金鑰**。

1. 針對**建立存取金鑰步驟 1**，選擇**命令列界面 (CLI)** 或**本機程式碼**。這兩個選項都會產生與 AWS CLI 和 SDKs 搭配使用的相同類型金鑰。

1. 在**建立存取金鑰步驟 2** 中，輸入選用標籤並選取**下一步**。

1. 在**建立存取金鑰步驟 3** 中，選取**下載 .csv 檔案**，以儲存包含 IAM 使用者存取金鑰和私密存取金鑰的 `.csv` 檔案。您之後將會用到此資訊。
**警告**  
使用適當的安全措施來保護這些登入資料的安全。

1. 選取 **Done** (完成)。

## 步驟 3：更新共用`credentials`檔案
<a name="stepauthIamUser"></a>

1. 建立或開啟共用的 AWS `credentials` 檔案。這個檔案是位於 Linux 和 macOS 系統上的 `~/.aws/credentials` 和 Windows 上的 `%USERPROFILE%\.aws\credentials`。如需詳細資訊，請參閱[登入資料檔案的位置](https://docs.aws.amazon.com/credref/latest/refdocs/file-location.html)。

1. 將以下文字新增至共用的 `credentials` 檔案。將範例 ID 值和範例索引鍵值取代為您先前下載的`.csv`檔案中的值。

   ```
   [default]
   aws_access_key_id = {{AKIAIOSFODNN7EXAMPLE}}
   aws_secret_access_key = {{wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY}}
   ```

   

1. 儲存檔案。

共用`credentials`檔案是存放登入資料的最常見方式。這些也可以設定為環境變數，請參閱 [AWS 存取金鑰](feature-static-credentials.md) 以取得環境變數名稱。這是讓您開始使用的方法，但我們建議您盡快轉換到 IAM Identity Center 或其他臨時登入資料。在您不使用長期登入資料後，請記得從共用`credentials`檔案刪除這些登入資料。