身分識別與存取管理 AWS Cloud Development Kit (AWS CDK) - AWS Cloud Development Kit (AWS CDK) V2

這是 AWS CDK v2 開發人員指南。較舊的 CDK V1 已於 2022 年 6 月 1 日進入維護,並於 2023 年 6 月 1 日結束支援。

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

身分識別與存取管理 AWS Cloud Development Kit (AWS CDK)

AWS Identity and Access Management (IAM) 可協助系統管理員安全地控制 AWS 資源存取權。 AWS 服務 IAM管理員控制誰可以驗證(登錄)和權(有權限)使用 AWS 資源。IAM是您 AWS 服務 可以免費使用的。

物件

你如何使用 AWS Identity and Access Management (IAM)不同,具體取決於你在做的工作 AWS。

服務使用者 — 如果您 AWS 服務 用於執行工作,則管理員會為您提供所需的認證和權限。當您使用更多 AWS 功能來完成工作時,您可能需要其他權限。了解存取許可的管理方式可協助您向管理員請求正確的許可。

服務管理員 — 如果您負責公司的 AWS 資源,您可能擁有完整的 AWS 資源存取權。決定您的服務使用者應該存取哪些 AWS 服務 資源是您的工作。然後,您必須向IAM管理員提交請求,才能變更服務使用者的權限。檢閱此頁面上的資訊,以瞭解的基本概念IAM。

IAM系統管理 — 如果您是IAM系統管理員,您可能想要瞭解如何撰寫原則來管理存取權的詳細資訊 AWS 服務。

使用身分驗證

驗證是您 AWS 使用身分認證登入的方式。您必須以IAM使用者分或假設IAM角色來驗證 (登入 AWS)。 AWS 帳戶根使用者

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

根據您的使用者類型,您可以登入 AWS Management Console 或 AWS 存取入口網站。如需登入的詳細資訊 AWS,請參閱AWS 登入 使用者指南中的如何登入您 AWS 帳戶的。

若要 AWS 以程式設計方式存取 AWS CDK,請 AWS 提供軟體開發套件 (SDKs) 和命令列介面 (CLI),以便使用您的認證加密簽署要求。如果您不使用 AWS 工具,則必須自行簽署要求。如需使用建議方法來自行簽署請求的詳細資訊,請參閱 AWS 一般參考 中的第 4 版簽署程序

無論您使用何種身分驗證方法,您可能都需要提供額外的安全性資訊。例如, AWS 建議您使用多重要素驗證 (MFA) 來增加帳戶的安全性。若要深入瞭解,請參閱使用AWS IAM Identity Center 者指南中的多重要素驗證和使用多重要素驗證 (MFA) AWS的使用IAM者指南。

AWS 帳戶 根使用者

當您建立時 AWS 帳戶,您會從一個登入身分開始,該身分可完整存取該帳戶中的所有資源 AWS 服務 和資源。此身分稱為 AWS 帳戶 root 使用者,可透過使用您用來建立帳戶的電子郵件地址和密碼登入來存取。強烈建議您不要以根使用者處理日常任務。保護您的根使用者憑證,並將其用來執行只能由根使用者執行的任務。如需需要您以 root 使用者身分登入的完整工作清單,請參閱《使用指南》中的〈需要 root 使用者認證的IAM工

聯合身分

最佳作法是要求人類使用者 (包括需要系統管理員存取權的使用者) 使用與身分識別提供者的同盟,才能使用臨時認證 AWS 服務 來存取。

聯合身分識別是來自企業使用者目錄的使用者、Web 身分識別提供者、Identi ty Center 目錄,或使用透過身分識別來源提供的認證進行存取 AWS 服務 的任何使用者。 AWS Directory Service同盟身分存取時 AWS 帳戶,他們會假設角色,而角色則提供臨時認證。

對於集中式存取權管理,我們建議您使用 AWS IAM Identity Center。您可以在 IAM Identity Center 中建立使用者和群組,也可以連線並同步至您自己身分識別來源中的一組使用者和群組,以便在所有應用程式 AWS 帳戶 和應用程式中使用。如需IAM身分識別中心的相關資訊,請參閱IAM識別中心是什麼?《AWS IAM Identity Center 使用者指南》中。

IAM 使用者和群組

IAM使用者是您內部的身分,具 AWS 帳戶 有單一人員或應用程式的特定權限。在可能的情況下,我們建議您仰賴臨時登入資料,而不要建立具有長期認證 (例如密碼和存取金鑰) 的IAM使用者。不過,如果您的特定使用案例需要使用IAM者的長期認證,建議您輪換存取金鑰。如需詳細資訊,請參閱《使用指南》中的「IAM定期輪換存取金鑰」以瞭解需要長期認證的使用案例

IAM群組是指定IAM使用者集合的身分識別。您無法以群組身分簽署。您可以使用群組來一次為多名使用者指定許可。群組可讓管理大量使用者許可的程序變得更為容易。例如,您可以擁有一個名為的群組,IAMAdmins並授與該群組管理IAM資源的權限。

使用者與角色不同。使用者只會與單一人員或應用程式建立關聯,但角色的目的是在由任何需要它的人員取得。使用者擁有永久的長期憑證,但角色僅提供暫時憑證。要了解更多信息,請參閱《IAM用戶指南》中的創建用戶(而不是角色)的IAM時間。

IAM角色

IAM角色是您 AWS 帳戶 中具有特定權限的身份。它與IAM使用者類似,但與特定人員無關聯。您可以 AWS Management Console 透過切換角色來暫時擔任中的角色。IAM您可以透過呼叫 AWS CLI 或 AWS API作業或使用自訂來擔任角色URL。如需有關使用角色方法的詳細資訊,請參閱《使用指南》中的IAM〈使用IAM角色

IAM具有臨時認證的角色在下列情況下很有用:

  • 聯合身分使用者存取 — 如需向聯合身分指派許可,請建立角色,並為角色定義許可。當聯合身分進行身分驗證時,該身分會與角色建立關聯,並獲授予由角色定義的許可。如需聯合角色的相關資訊,請參閱《使用指南》中的〈建立第三方身分識別提供IAM者的角色〉如果您使用IAM身分識別中心,則需要設定權限集。為了控制身分驗證後可以存取的內IAM容,IAMIdentity Center 會將權限集與中的角色相關聯。如需有關許可集的資訊,請參閱 AWS IAM Identity Center 使用者指南中的許可集

  • 暫時IAM使用者權限 — IAM 使用者或角色可以假定某個IAM角色,暫時取得特定工作的不同權限。

  • 跨帳戶存取 — 您可以使用IAM角色允許不同帳戶中的某個人 (受信任的主體) 存取您帳戶中的資源。角色是授予跨帳戶存取權的主要方式。但是,對於某些策略 AWS 服務,您可以將策略直接附加到資源(而不是使用角色作為代理)。若要瞭解跨帳戶存取角色與以資源為基礎的政策之間的差異,請參閱《IAM使用指南》中的IAM角色與以資源為基礎的政策有何不同。

  • 跨服務訪問 — 有些 AWS 服務 使用其他 AWS 服務功能。例如,當您在服務中撥打電話時,該服務通常會在 Amazon 中執行應用程式EC2或將物件存放在 Amazon S3 中。服務可能會使用呼叫主體的許可、使用服務角色或使用服務連結角色來執行此作業。

    • 服務角色 — 服務角色是指服務代表您執行動作所代表的IAM角色。IAM管理員可以從中建立、修改和刪除服務角色IAM。如需詳細資訊,請參閱《IAM使用指南》 AWS 服務中的建立角色以將權限委派給

    • 服務連結角色 — 服務連結角色是連結至. AWS 服務服務可以擔任代表您執行動作的角色。服務連結角色會顯示在您的中, AWS 帳戶 且屬於服務所有。IAM管理員可以檢視 (但無法編輯服務連結角色) 的權限。

  • 在 Amazon 上執行的應用程式 EC2 — 您可以使用IAM角色來管理在執行個體上EC2執行的應用程式以及發出 AWS CLI 或 AWS API請求的臨時登入資料。這比在EC2實例中存儲訪問密鑰更好。若要將 AWS 角色指派給EC2執行個體並讓其所有應用程式都能使用,請建立附加至執行個體的執行個體設定檔。執行個體設定檔包含角色,可讓執行個體上EC2執行的程式取得臨時登入資料。如需詳細資訊,請參閱使用者指南中的使用IAM角色將許可授與在 Amazon EC2 執行個體上執行的應IAM程式。

要了解是否使用IAM角色還是用IAM戶,請參閱《用戶指南》中的「IAM創建IAM角色的時機(而不是用戶)」。