

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

# Amazon Q Developer 的身分和存取管理
<a name="security-iam"></a>

 AWS Identity and Access Management (IAM) 是 AWS 服務 ，可協助管理員安全地控制對 AWS resources 的存取。 IAM 管理員可控制誰可以經過*身分驗證 *（登入） 和*授權* （具有許可） 來使用 Amazon Q Developer 資源。 IAM 是您可以免費使用 AWS 服務 的 。

**Topics**
+ [目標對象](#security-iam-audience)
+ [使用身分驗證](#security-iam-authentication)
+ [使用政策管理存取權](#security-iam-access-manage)
+ [Amazon Q Developer 如何搭配 IAM 運作](security-iam-service-with-iam.md)
+ [使用政策管理 Amazon Q Developer 的存取權](security_iam_manage-access-with-policies.md)
+ [管理對 Amazon Q Developer 的存取權以進行第三方整合](security_iam_manage-access-with-kms-policies.md)
+ [Amazon Q Developer 許可參考](security_iam_permissions.md)
+ [AWS Amazon Q Developer 的 受管政策](managed-policy.md)
+ [針對 Amazon Q Developer 和使用者訂閱使用服務連結角色](using-service-linked-roles.md)

## 目標對象
<a name="security-iam-audience"></a>

使用 的方式 IAM 會有所不同，取決於您在 Amazon Q 中執行的工作。

 **服務使用者** ‒ 如果您使用 Amazon Q 執行任務，您的管理員會為您提供您需要的憑證和許可。隨著您為了執行作業而使用的 Amazon Q 功能數量變多，您可能會需要額外的許可。瞭解存取許可的管理方式可協助您向管理員請求正確的許可。

 **服務管理員** − 如果您在公司負責管理 Amazon Q 資源，建議您掌握 Amazon Q 的完整存取權。您的任務是決定服務使用者應該存取哪些 Amazon Q 功能和資源。您接著必須將請求提交給您的 IAM 管理員，來變更您服務使用者的許可。檢閱此頁面上的資訊，以了解 的基本概念 IAM。若要進一步了解貴公司如何 IAM 搭配 Amazon Q 使用 ，請參閱 [Amazon Q 的運作方式 IAM](security-iam-service-with-iam.md)。

 ** IAM 管理員** – 如果您是 IAM 管理員，您可能想要了解如何撰寫政策以管理 Amazon Q 存取權的詳細資訊。如果您是 IAM 管理員，請考慮了解如何撰寫政策以管理 IAM 使用者存取 服務的詳細資訊。如需 Amazon Q 的特定資訊，請參閱 [Amazon Q 的AWS 區域 受管政策](managed-policy.md)。

## 使用身分驗證
<a name="security-iam-authentication"></a>

身分驗證是您 AWS 使用身分憑證登入 的方式。您必須擔任 IAM 角色，以 AWS 帳戶 根使用者 IAM 使用者、 或 身分*進行身分驗證* （登入 AWS)。

您可以使用透過身分來源提供的登入資料，以聯合身分 AWS 身分身分登入 。 AWS IAM Identity Center (IAM Identity Center) 使用者、您公司的單一登入身分驗證，以及您的 Google或 Facebook登入資料是聯合身分的範例。當您以聯合身分身分登入時，您的管理員先前會使用 IAM 角色設定聯合身分。當您使用聯合 AWS 身分存取 時，您會間接擔任角色。

根據您的使用者類型，您可以登入 AWS 管理主控台 或 AWS 存取入口網站。如需登入的詳細資訊 AWS，請參閱*AWS 登入 《 使用者指南*》中的[如何登入您的 AWS 帳戶](https://docs.aws.amazon.com/signin/latest/userguide/how-to-sign-in.html) 。

無論您使用何種身分驗證方法，您可能還需要提供額外的安全性資訊。例如， AWS 建議您使用多重驗證 (MFA) 來提高帳戶的安全性。如需更多資訊，請參閱 *AWS IAM Identity Center 使用者指南*中的[多重要素驗證](https://docs.aws.amazon.com/singlesignon/latest/userguide/enable-mfa.html)和 *IAM 使用者指南*中的[在 AWS中使用多重要素驗證 (MFA)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html)。

### AWS 帳戶根使用者
<a name="security-iam-authentication-rootuser"></a>

第一次建立 時 AWS 帳戶，您會從單一登入身分開始，該身分可完整存取帳戶中的所有 AWS 服務 和資源。此身分稱為 AWS 帳戶根使用者 ，可透過使用您用來建立帳戶的電子郵件地址和密碼登入來存取。強烈建議您不要以根使用者處理日常作業。保護您的根使用者憑證，並將其用來執行只能由根使用者執行的任務。如需這些任務的完整清單，瞭解需以根使用者登入的任務，請參閱《* IAM 使用者指南*》中的[需要根使用者憑證的任務](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html)。

### 聯合身分
<a name="security-iam-authentication-federateduser"></a>

根據最佳實務， 要求人類使用者，包括需要管理員存取權的使用者，使用 聯合身分提供者 AWS 服務 來使用臨時憑證來存取 。

聯合身分是您企業使用者目錄、Web 身分提供者、 AWS Directory Service、Identity Center 目錄，或 AWS 服務 是透過身分來源提供的登入資料存取的任何使用者。當聯合身分存取時 AWS 帳戶，它們會擔任 角色，而角色會提供臨時登入資料。

對於集中式存取權管理，我們建議您使用 AWS IAM Identity Center。您可以在 IAM Identity Center 中建立使用者和群組，也可以連接並同步到您自己的身分來源中的一組使用者 AWS 帳戶 和群組，以便在所有 和應用程式中使用。如需 IAM Identity Center 的詳細資訊，請參閱 *AWS IAM Identity Center 使用者指南*中的[什麼是 IAM Identity Center？](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)。

### IAM 使用者 和 群組
<a name="security-iam-authentication-iamuser"></a>

* [IAM 使用者](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html) * 是您 中的身分 AWS 帳戶 ，具有單一人員或應用程式的特定許可。如果可能，我們建議依賴臨時登入資料，而不是建立擁有密碼和存取金鑰等長期登入資料 IAM 使用者 的人員。但是如果特定使用案例需要擁有長期憑證的 IAM 使用者，建議您輪換存取金鑰。如需更多資訊，請參閱《*IAM 使用者指南*》中的[為需要長期憑證的使用案例定期輪換存取金鑰](https://docs.aws.amazon.com//IAM/latest/UserGuide/best-practices.html#rotate-credentials)。

[IAM 群組](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups.html)是指定 集合的身分 IAM 使用者。您無法以群組身分登入。您可以使用群組來一次為多名使用者指定許可。群組可讓管理大量使用者許可的程序變得更為容易。例如，您可以擁有名為 *IAMAdmins* 的群組，並授予該群組管理 IAM 資源的許可。

使用者與角色不同。使用者只會與單一人員或應用程式建立關聯，但角色的目的是在由任何需要它的人員取得。使用者擁有永久的長期憑證，但角色僅提供臨時憑證。如需詳細資訊，請參閱《IAM 使用者指南》**中的[建立 IAM 使用者 (而非角色) 的時機](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose)。

### IAM 角色
<a name="security-iam-authentication-iamrole"></a>

*[IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)*是 中具有特定許可 AWS 帳戶 的身分。IAM 角色類似於 ， IAM 使用者 但不與特定人員相關聯。您可以透過 AWS 管理主控台 切換 IAM 角色暫時在 中擔任 角色。 [https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-console.html)您可以透過呼叫 AWS Command Line Interface (AWS CLI) 或 AWS API 操作或使用自訂 URL 來擔任角色。如需使用角色的方法之詳細資訊，請參閱《*IAM 使用者指南*》中的[使用 IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html)。

 IAM 具有臨時登入資料的 角色在下列情況下非常有用：
+  **聯合身分使用者存取** – 如需向聯合身分指派許可，請建立角色，並為角色定義許可。當聯合身分進行身分驗證時，該身分會與角色建立關聯，並獲授予由角色定義的許可。如需有關聯合角色的相關資訊，請參閱 [IAM 使用者指南](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-idp.html)中的*為第三方身分提供者建立角色*。如果您使用 IAM Identity Center，則需要設定許可集。為控制身分驗證後可以存取的內容，IAM Identity Center 將許可集與 IAM中的角色相關聯。如需有關許可集的資訊，請參閱 [AWS IAM Identity Center 使用者指南](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsetsconcept.html)中的*許可集*。
+  **暫時 IAM 使用者 許可** – IAM 使用者 可以擔任 IAM 角色，暫時接受特定任務的不同許可。
+  **跨帳戶存取權** − 您可以使用 IAM 角色，允許不同帳戶中的某人 (受信任的主體) 存取您帳戶的資源。角色是授予跨帳戶存取權的主要方式。但是，針對某些 AWS 服務，您可以將政策直接連接到資源 (而非使用角色做為代理)。如需跨帳戶存取權的角色與資源型政策之間有何差異的詳細資訊，請參閱《IAM 使用者指南》**中的 [IAM 角色與資源型政策的差異](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html)。
+  **跨服務存取** – 有些 AWS 服務 使用其他 中的功能 AWS 服務。服務可能會使用呼叫主體的許可、使用服務角色或使用服務連結角色來執行此作業。
  +  **委託人許可** – 當您使用 IAM 使用者 或 角色在 中執行動作時 AWS，您會被視為委託人。政策能將許可授予主體。當您使用某些服務時，您可能會執行一個動作，然後在不同的服務中觸發另一個動作。在此情況下，您必須具有執行這兩個動作的許可。
  +  **服務角色** – 服務角色是服務擔任以代表您執行動作 IAM 的角色。 IAM 管理員可以從 IAM內建立、修改和刪除服務角色。如需詳細資訊，請參閱 *IAM 使用者指南*中的[建立角色以委派許可給 AWS 服務服務](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。
  +  **服務連結角色** – 服務連結角色是連結至 的一種服務角色 AWS 服務。服務可以擔任代表您執行動作的角色。服務連結角色會出現在您的 中 AWS 帳戶 ，並由服務擁有。 IAM 管理員可以檢視，但不能編輯服務連結角色的許可。
+  **在 上執行 Amazon EC2 的應用程式 ** – 您可以使用 IAM 角色來管理在 Amazon EC2 執行個體上執行之應用程式的臨時登入資料，以及提出 AWS CLI 或 AWS API 請求。這是在 Amazon EC2 執行個體內存放存取金鑰的較好方式。若要將 IAM 角色指派給 Amazon EC2 執行個體並將其提供給其所有應用程式，您可以建立連接至執行個體的執行個體描述檔。執行個體描述檔包含 角色，並可讓在 Amazon EC2 執行個體上執行的程式取得臨時登入資料。如需詳細資訊，請參閱《*IAM 使用者指南*》中的[使用 IAM 角色將許可授予在 Amazon EC2 執行個體上執行的應用程式](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)。

如需是否使用 IAM 角色的詳細資訊，請參閱《*IAM 使用者指南*》中的[何時建立 IAM 角色 （而非使用者）](https://docs.aws.amazon.com/IAM/latest/UserGuide/id.html#id_which-to-choose_role)。

## 使用政策管理存取權
<a name="security-iam-access-manage"></a>

您可以透過建立政策並將其連接到身分或資源 AWS 來控制 AWS 中的存取。政策是 中的物件，當與身分或資源建立關聯時， AWS 會定義其許可。當委託人 （使用者、根使用者或角色工作階段） 發出請求時， 會 AWS 評估這些政策。政策中的許可決定是否允許或拒絕請求。大多數政策會以 JSON 文件 AWS 的形式存放在 中。如需 JSON 政策文件結構和內容的詳細資訊，請參閱《*IAM 使用者指南*》中的 [JSON 政策概觀](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policies-json)。

管理員可以使用 AWS JSON 政策來指定誰可以存取內容。也就是說，哪個**主體**在什麼**條件**下可以對什麼**資源**執行哪些**動作**。

每個 IAM 實體 （使用者或角色） 都從沒有許可開始。根據預設，使用者無法進行任何操作，甚至無法變更自己的密碼。若要授予使用者執行動作的許可，管理員必須將許可政策附加到使用者。或者，管理員可以將使用者新增到具備預定許可的群組。當管理員將許可授予群組時，該群組中的所有使用者都會獲得這些許可。

 IAM 無論您用來執行操作的方法為何， 政策都會定義動作的許可。例如，假設您有一個允許 `iam:GetRole` 動作的政策。具有該政策的使用者可以從 AWS 管理主控台 AWS CLI、 或 AWS API 取得角色資訊。

### 身分型政策
<a name="security-iam-access-manage-id-based-policies"></a>

身分型政策是您可以連接到身分的 JSON 許可政策文件，例如 IAM 使用者、 角色或 群組。這些政策可控制身分在何種條件下能對哪些資源執行哪些動作。如需如何建立身分型政策的詳細資訊，請參閱《IAM 使用者指南》**中的[建立 IAM 政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)。

身分型政策可進一步分類成*內嵌政策*或*受管政策*。內嵌政策會直接嵌入單一使用者、群組或角色。受管政策是獨立的政策，您可以連接到 中的多個使用者、群組和角色 AWS 帳戶。受管政策包括 AWS 受管政策和客戶受管政策。如需如何在受管政策與內嵌政策之間選擇的詳細資訊，請參閱《IAM 使用者指南》**中的[在受管政策和內嵌政策間選擇](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#choosing-managed-or-inline)。

### 資源型政策
<a name="security-iam-access-manage-resource-based-policies"></a>

資源型政策是附加到資源 (如 Amazon S3 儲存貯體) 的 JSON 政策文件。服務管理員可使用這些政策來定義指定委託人 (帳戶成員、使用者或角色) 可以在什麼情況下對該資源執行什麼動作。資源型政策是內嵌政策。不存在受管的資源型政策。

### 存取控制清單 (ACL)
<a name="security-iam-access-manage-acl"></a>

存取控制清單 (ACL) 是可控制哪些主體 (帳戶成員、使用者或角色) 擁有存取某資源之許可的政策類型。ACLs類似於以資源為基礎的政策，雖然它們不使用 JSON 政策文件格式。 Amazon S3 AWS WAF、 和 Amazon VPC 是支援 ACLs的服務範例。如需 ACL 的詳細資訊，請參閱《Amazon S3 使用者指南》**中的[存取控制清單 (ACL) 概觀](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html)。

### 其他政策類型
<a name="security-iam-access-manage-other-policies"></a>

 AWS 支援其他較不常見的政策類型。這些政策類型可設定較常見政策類型授予您的最大許可。
+  **許可界限** – 許可界限是一種進階功能，您可以在其中設定身分型政策可授予 IAM 實體 (IAM 使用者 或角色） 的最大許可。您可以為實體設定許可界限。所產生的許可會是實體的身分類型政策和其許可界限的交集。會在 `Principal` 欄位中指定使用者或角色的資源型政策則不會受到許可界限限制。任何這些政策中的明確拒絕都會覆寫允許。如需許可界限的詳細資訊，請參閱《*IAM 使用者指南*》中的 [IAM 實體的許可界限](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html)。
+  **服務控制政策 SCPs)** – SCPs是 JSON 政策，可指定 中組織或組織單位 (OU) 的最大許可 AWS Organizations。 AWS Organizations 是一種用於分組和集中管理您企業擁有 AWS 帳戶 之多個 的服務。如果您啟用組織中的所有功能，則可以將 SCPs 套用到任何或所有帳戶。SCP 會限制成員帳戶中實體的許可，包括每個 AWS 帳戶 根使用者。如需 Organizations 和 SCP 的詳細資訊，請參閱 *AWS Organizations 使用者指南*中的 [SCP 運作方式](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_about-scps.html)。
+  **工作階段政策** – 工作階段政策是一種進階政策，您可以在透過編寫程式的方式建立角色或聯合使用者的暫時工作階段時，作為參數傳遞。所產生工作階段的許可會是使用者或角色的身分型政策和工作階段政策的交集。許可也可以來自資源型政策。所有這類政策中的明確拒絕都會覆寫該允許。如需詳細資訊，請參《*IAM 使用者指南*》中的[工作階段政策](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session)。

### 多種政策類型
<a name="security-iam-access-manage-multiple-policies"></a>

當多種類型的政策適用於請求時，產生的許可會更複雜而無法理解。若要了解如何 AWS 決定是否在涉及多個政策類型時允許請求，請參閱《*IAM 使用者指南*》中的[政策評估邏輯](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic.html)。