

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

# 使用 IAM Identity Center 驗證 AWS SDK 和工具
<a name="access-sso"></a>

 AWS IAM Identity Center 可用於在非AWS 運算服務環境中開發 AWS 應用程式時提供 AWS 登入資料。如果您是在 AWS 資源上進行開發，例如 Amazon Elastic Compute Cloud (Amazon EC2) 或 AWS Cloud9，我們建議您改為從該服務取得登入資料。

如果您已經使用 Identity Center 進行 AWS 帳戶存取，或需要管理組織的存取，請使用 IAM Identity Center 身分驗證。

在本教學課程中，您將建立 IAM Identity Center 存取權，並使用 AWS 存取入口網站和 ，為您的 SDK 或工具進行設定 AWS CLI。
+  AWS 存取入口網站是您手動登入 IAM Identity Center 的 Web 位置。URL 的格式為 `d-xxxxxxxxxx.awsapps.com/start`或 `{{your_subdomain}}.awsapps.com/start`。登入 AWS 存取入口網站時，您可以檢視已為該使用者設定的 AWS 帳戶 和 角色。此程序使用 AWS 存取入口網站來取得 SDK/工具身分驗證程序所需的組態值。
+  AWS CLI 用於設定 SDK 或工具，以使用 IAM Identity Center 身分驗證進行程式碼發出的 API 呼叫。此一次性程序會更新您的共用 AWS `config`檔案，然後在您執行程式碼時由軟體開發套件或工具使用。

## 先決條件
<a name="prereq-auth"></a>

開始此程序之前，您應該已完成下列操作：
+ 如果您沒有 AWS 帳戶，[請註冊 AWS 帳戶](https://portal.aws.amazon.com/billing/signup)。
+ 如果您尚未啟用 IAM Identity Center，請依照 *AWS IAM Identity Center 使用者指南*中的指示[啟用 IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/get-set-up-for-idc.html)。

## 使用 IAM Identity Center 設定程式設計存取
<a name="idcGettingStarted"></a>

### 步驟 1：建立存取權並選取適當的許可集
<a name="establishAccess"></a>

選擇下列其中一種方法來存取您的 AWS 登入資料。

#### 我沒有透過 IAM Identity Center 建立存取權
<a name="idc-access"></a>

1. 遵循*AWS IAM Identity Center 《 使用者指南*》中的[使用預設 IAM Identity Center 目錄程序設定使用者存取權，](https://docs.aws.amazon.com/singlesignon/latest/userguide/quick-start-default-idc.html)以新增使用者和新增管理許可。

1. `AdministratorAccess` 許可集不應用於定期開發。我們建議您改為使用預先定義的`PowerUserAccess`許可集，除非您的雇主已為此目的建立自訂許可集。

   再次遵循相同的[設定使用者存取與預設的 IAM Identity Center 目錄](https://docs.aws.amazon.com/singlesignon/latest/userguide/quick-start-default-idc.html)程序，但這次：
   + 與其建立`{{Admin team}}`群組，請建立`{{Dev team}}`群組，並在之後於指示中取代此群組。
   + 您可以使用現有的使用者，但必須將使用者新增至新`{{Dev team}}`群組。
   + 與其建立`{{AdministratorAccess}}`許可集，請建立`{{PowerUserAccess}}`許可集，並在之後於指示中取代。

   完成後，您應該具備下列項目：
   + `Dev team` 群組。
   + 連接至 `Dev team`群組的`PowerUserAccess`許可集。
   + 您的使用者已新增至 `Dev team`群組。

1. 退出入口網站並再次登入，以查看 `Administrator`或 的 AWS 帳戶 和 選項`PowerUserAccess`。使用工具/SDK `PowerUserAccess`時選取 。

#### 我已經 AWS 可以透過我的雇主管理的聯合身分提供者 （例如 Microsoft Entra 或 Okta) 存取
<a name="federated-access"></a>

 AWS 透過身分提供者的入口網站登入 。如果您的雲端管理員已授予您 `PowerUserAccess`（開發人員） 許可，您會看到您有權存取 AWS 帳戶 的 和許可集。您會在許可集名稱旁，看到使用該許可集手動或以程式設計方式存取帳戶的選項。

若您自訂實作，可能會產生不同體驗，例如不同的許可集名稱。若您不確定要使用哪個許可集，請聯絡您的 IT 團隊尋求協助。

#### 我已經 AWS 可以透過我的雇主管理的 AWS 存取入口網站存取
<a name="accessportal-access"></a>

透過 AWS AWS 存取入口網站登入 。若雲端管理員已授予您 `PowerUserAccess` (開發人員) 權限，您會看到您有權存取的 AWS 帳戶 和許可集。您會在許可集名稱旁，看到使用該許可集手動或以程式設計方式存取帳戶的選項。

#### 我已經 AWS 可以透過我的雇主管理的聯合身分自訂身分提供者存取
<a name="customfederated-access"></a>

請聯絡您的 IT 團隊尋求協助。

### 步驟 2：設定 SDKs和工具以使用 IAM Identity Center
<a name="configureAccess"></a>

1.  在開發機器上安裝最新的 AWS CLI。

   1. 請參閱*AWS Command Line Interface 《 使用者指南*》中的[安裝或更新最新版本的 AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)。

   1.  （選用） 若要驗證 AWS CLI 是否正常運作，請開啟命令提示字元並執行 `aws --version`命令。

1. 登入 AWS 存取入口網站。您的雇主可能會提供此 URL，您也可以依照**步驟 1：建立存取權**，在電子郵件中取得此 URL。如果沒有，請在 ****[https://console.aws.amazon.com/singlesignon/](https://console.aws.amazon.com/singlesignon/)：// 儀表板上尋找您的**AWS 存取入口網站 URL**。

   1. 在 AWS 存取入口網站**的帳戶**索引標籤中，選取要管理的個別帳戶。使用者的角色隨即顯示。選擇**存取金鑰**以取得命令列的登入資料，或為適當的許可集取得程式設計存取。使用預先定義的`PowerUserAccess`許可集，或您或您的雇主建立的任何許可集，以套用開發的最低權限許可。

   1. 在**取得憑證**對話方塊中，選擇**MacOS 和 Linux** 或 **Windows**，具體取決於您的作業系統。

   1. 選擇 **IAM Identity Center 登入**資料方法，以取得下一個步驟所需的 `Issuer URL`和 `SSO Region`值。注意： `SSO Start URL`可與 互換使用`Issuer URL`。

1. 在 AWS CLI 命令提示字元中，執行 `aws configure sso`命令。出現提示時，輸入您在上一個步驟中收集的組態值。如需此 AWS CLI 命令的詳細資訊，請參閱[使用`aws configure sso`精靈設定設定檔](https://docs.aws.amazon.com/cli/latest/userguide/sso-configure-profile-token.html#sso-configure-profile-token-auto-sso)。

   1. 針對提示 `SSO Start URL`，輸入您為 取得的值`Issuer URL`。

   1.  對於 **CLI 設定檔名稱**，我們建議您在開始使用時輸入{{預設值}}。如需如何設定非預設 （已命名） 設定檔及其相關聯環境變數的資訊，請參閱 [個人檔案](file-format.md#file-format-profile)。

1. （選用） 在 AWS CLI 命令提示字元中，執行 `aws sts get-caller-identity` 命令以確認作用中的工作階段身分。回應應會顯示您設定的 IAM Identity Center 許可集。

1. 如果您使用的是 AWS 開發套件，請在開發環境中為您的開發套件建立應用程式。

   1. 對於某些 SDKs，`SSOOIDC`您必須將 `SSO`和 等其他套件新增至您的應用程式，才能使用 IAM Identity Center 身分驗證。如需詳細資訊，請參閱您的特定 SDK。

   1.  如果您先前已設定 的存取權 AWS，請檢閱共用 AWS `credentials`檔案是否有任何 [AWS 存取金鑰](feature-static-credentials.md)。由於[了解登入資料提供者鏈結](standardized-credentials.md#credentialProviderChain)優先順序，您必須移除任何靜態登入資料，開發套件或工具才會使用 IAM Identity Center 登入資料。

 如需深入了解SDKs和工具如何使用此組態來使用和重新整理登入資料，請參閱 [如何解決 AWS SDKs IAM Identity Center 身分驗證](understanding-sso.md)。

若要直接在共用`config`檔案中設定 IAM Identity Center 提供者設定，請參閱本指南[IAM Identity Center 憑證提供者](feature-sso-credentials.md)中的 。

## 重新整理入口網站存取工作階段
<a name="refreshSession"></a>

您的存取最終將過期，開發套件或工具將遇到身分驗證錯誤。當此過期發生時，取決於您設定的工作階段長度。若要在需要時再次重新整理存取入口網站工作階段，請使用 AWS CLI 執行 `aws sso login`命令。

您可以同時延長 IAM Identity Center 存取入口網站工作階段持續時間和許可集工作階段持續時間。這可延長您可以執行程式碼的時間，之後才需要再次使用 手動登入 AWS CLI。如需詳細資訊，請參閱《*AWS IAM Identity Center 使用者指南*》中的以下主題：
+ **IAM Identity Center 工作階段持續時間** – [設定使用者 AWS 存取入口網站工作階段的持續時間](https://docs.aws.amazon.com/singlesignon/latest/userguide/configure-user-session.html) 
+ **許可集工作階段持續時間** – [設定工作階段持續時間 ](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtosessionduration.html)