本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon Verified Permissions 的身分和存取管理
AWS Identity and Access Management (IAM) 是 AWS 服務 ,可協助管理員安全地控制對 AWS resources 的存取。 IAM 管理員可控制誰可以經過身分驗證 (登入) 和授權 (具有許可) 來使用 Verified Permissions 資源。 IAM 是您可以免費使用 AWS 服務 的 。
主題
目標對象
您的使用方式 AWS Identity and Access Management (IAM) 會根據您的角色而有所不同:
-
服務使用者 - 如果您無法存取功能,請向系統管理員請求許可權 (請參閱 對 Amazon Verified Permissions 身分和存取進行故障診斷)
-
服務管理員 - 判斷使用者存取權限,並提交許可權請求 (請參閱 Amazon Verified Permissions 如何使用 IAM)
-
IAM 管理員 - 撰寫政策以管理存取 (請參閱 Amazon Verified Permissions 的身分型政策範例)
使用身分驗證
身分驗證是您 AWS 使用身分憑證登入 的方式。您必須以 AWS 帳戶根使用者、IAM 使用者或擔任 IAM 角色身分進行身分驗證。
您可以使用身分來源的登入資料,例如 AWS IAM Identity Center (IAM Identity Center)、單一登入身分驗證或 Google/Facebook 登入資料,以聯合身分的形式登入。如需有關登入的詳細資訊,請參閱《AWS 登入 使用者指南》中的如何登入您的 AWS 帳戶。
對於程式設計存取, AWS 提供 SDK 和 CLI 以密碼編譯方式簽署請求。如需詳細資訊,請參閱IAM 《 使用者指南》中的 AWS API 請求的簽章版本 4。
AWS 帳戶 根使用者
當您建立 時 AWS 帳戶,您會從一個名為 AWS 帳戶 theroot 使用者的登入身分開始,該身分可完整存取所有 AWS 服務 和 資源。強烈建議您不要以根使用者處理日常任務。如需需要根使用者憑證的任務,請參閱IAM 《 使用者指南》中的需要根使用者憑證的任務。
聯合身分
最佳實務是要求人類使用者使用聯合身分提供者,以 AWS 服務 使用臨時憑證存取 。
聯合身分是來自您企業目錄、Web 身分提供者的使用者,或使用來自身分來源的 AWS 服務 登入資料存取 Directory Service 的使用者。聯合身分會擔任提供臨時憑證的角色。
對於集中式存取權管理,我們建議使用 AWS IAM Identity Center。如需詳細資訊,請參閱 AWS IAM Identity Center 使用者指南中的什麼是 IAM Identity Center?。
IAM 使用者和群組
IAM 使用者https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users.html是一種身分具備單人或應用程式的特定許可權。我們建議使用臨時憑證,而不是具有長期使用權憑證的 IAM 使用者。如需詳細資訊,請參閱IAM 《 使用者指南》中的要求人類使用者使用聯合身分提供者,以 AWS 使用臨時憑證存取 。
IAM 群組會指定 IAM 使用者的集合,讓大量使用者更容易管理許可。如需詳細資訊,請參閱IAM 《 使用者指南》中的IAM 使用者使用案例。
IAM 角色
IAM 角色是 中具有特定許可 AWS 帳戶 的身分。它類似 IAM 使用者,但不與特定的人員相關聯。您可以 AWS 管理主控台 切換 IAM 角色,暫時在 中擔任 角色。您可以透過呼叫 AWS CLI 或 AWS API 操作或使用自訂 URL 來擔任角色。如需使用角色方法的詳細資訊,請參閱IAM 《 使用者指南》中的使用 IAM 角色。
IAM 具有臨時登入資料的 角色在下列情況下非常有用:
-
聯合身分使用者存取 – 如需向聯合身分指派許可,請建立角色,並為角色定義許可。當聯合身分進行身分驗證時,該身分會與角色建立關聯,並獲授予由角色定義的許可。如需聯合角色的相關資訊,請參閱IAM 《 使用者指南》中的為第三方身分提供者 (聯合) 建立角色。如果您使用 IAM Identity Center,則需要設定許可集。為控制身分驗證後可以存取的內容,IAM Identity Center 將許可集與 IAM中的角色相關聯。如需有關許可集的資訊,請參閱《AWS IAM Identity Center 使用者指南》中的許可集。
-
臨時 IAM 使用者許可 – IAM 使用者或角色可以擔任 IAM 角色,暫時取得特定任務的不同許可。
-
跨帳戶存取權 − 您可以使用 IAM 角色,允許不同帳戶中的某人 (受信任的主體) 存取您帳戶的資源。角色是授予跨帳戶存取權的主要方式。不過,對於某些 AWS 服務,您可以直接將政策連接到資源 (而不是使用角色做為代理)。若要了解跨帳戶存取的角色和資源型政策之間的差異,請參閱IAM 《 使用者指南》中的IAM 角色與資源型政策的差異。
-
在 上執行的應用程式 Amazon EC2 – 您可以使用 IAM 角色來管理在 EC2 執行個體上執行之應用程式的臨時登入資料,以及提出 AWS CLI 或 AWS API 請求。這是在 EC2 執行個體內儲存存取金鑰的較好方式。若要將 AWS 角色指派給 EC2 執行個體並將其提供給其所有應用程式,您可以建立連接至執行個體的執行個體描述檔。執行個體設定檔包含該角色,並且可讓 EC2 執行個體上執行的程式取得臨時憑證。如需詳細資訊,請參閱IAM 《 使用者指南》中的使用 IAM 角色將許可授予在 Amazon EC2 執行個體上執行的應用程式。
若要了解如何使用 IAM 角色或 IAM 使用者,請參閱IAM 《 使用者指南》中的建立 IAM 角色 (而非使用者) 的時機。
使用政策管理存取權
您可以透過建立政策並將其連接到身分或資源 AWS 來控制 AWS 中的存取。政策定義與身分或資源相關聯的許可。當委託人提出請求時 AWS , 會評估這些政策。大多數政策會以 JSON 文件 AWS 形式存放在 中。如需 JSON 政策文件的詳細資訊,請參閱IAM 《 使用者指南》中的 JSON 政策概觀。
使用政策時,管理員會定義哪些主體可以對哪些資源執行動作,以及在哪些條件下執行動作,藉此指定誰可以存取哪些內容。
預設情況下,使用者和角色沒有許可。 IAM 管理員會建立 IAM 政策並將其新增至角色,使用者可以擔任該角色。無論用來執行操作的方法為何, IAM 政策都會定義許可。
身分型政策
身分型政策是可以連接身分 (使用者、群組或角色) 的 JSON 許可政策文件。這些政策可控制身分在何種條件下能對哪些資源執行哪些動作。若要了解如何建立身分型政策,請參閱IAM 《 使用者指南》中的使用客戶受管政策定義自訂 IAM 許可。
身分型政策可以是內嵌政策 (直接嵌入單一身分) 或受管政策 (連接多個身分的獨立政策)。若要了解如何在受管和內嵌政策之間進行選擇,請參閱IAM 《 使用者指南》中的在受管政策和內嵌政策之間進行選擇。
資源型政策
資源型政策是附加到資源的 JSON 政策文件。範例包括 IAM 角色信任政策和 Amazon S3 儲存貯體政策。在支援資源型政策的服務中,服務管理員可以使用它們來控制對特定資源的存取權限。您必須在資源型政策中指定主體。
資源型政策是位於該服務中的內嵌政策。您無法在資源型政策 IAM 中使用來自 的 AWS 受管政策。
存取控制清單 (ACL)
存取控制清單 (ACL) 可控制哪些主體 (帳戶成員、使用者或角色) 擁有存取某資源的許可。ACL 類似於資源型政策,但它們不使用 JSON 政策文件格式。
Amazon S3 AWS WAF和 Amazon VPC 是支援 ACLs的服務範例。如需進一步了解 ACL,請參閱《Amazon Simple Storage Service 開發人員指南》中的存取控制清單 (ACL) 概觀。
其他政策類型
AWS 支援其他政策類型,可設定更多常見政策類型授予的最大許可:
-
許可界限 – 設定身分型政策可授予 IAM 實體的最大許可。如需詳細資訊,請參閱IAM 《 使用者指南》中的IAM 實體的許可界限。
-
服務控制政策 (SCP) – 指定 AWS Organizations中的組織或組織單位的最大許可權。如需詳細資訊,請參閱《AWS Organizations 使用者指南》中的服務控制政策。
-
資源控制政策 (RCP) – 定義組織中資源可用的最大許可權。如需詳細資訊,請參閱《AWS Organizations 使用者指南》中的資源控制政策 (RCP)。
-
工作階段政策 – 這是一種在為角色或聯合身分使用者建立臨時工作階段時,以參數形式傳遞的進階政策。如需詳細資訊,請參閱 IAM 使用者指南中的工作階段政策。
多種政策類型
當多種類型的政策適用於請求時,產生的許可會更複雜而無法理解。若要了解如何 AWS 決定是否在涉及多個政策類型時允許請求,請參閱IAM 《 使用者指南》中的政策評估邏輯。