在資源政策、Amazon EKS Cluster 組態映射和 AWS KMS 金鑰政策中參考許可集 - AWS IAM Identity Center

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

在資源政策、Amazon EKS Cluster 組態映射和 AWS KMS 金鑰政策中參考許可集

當您將許可集指派給 AWS 帳戶時, IAM Identity Center 會建立名稱開頭為 的角色AWSReservedSSO_

角色的完整名稱和 Amazon Resource Name (ARN) 使用下列格式:

名稱 ARN
AWSReservedSSO_permission-set-name_unique-suffix arn:aws:iam::aws-account-ID:role/aws-reserved/sso.amazonaws.com/aws-region/AWSReservedSSO_permission-set-name_unique-suffix

如果您在 IAM Identity Center 中的身分來源託管於 us-east-1,則 aws-region中沒有 ARN。角色ARN的完整名稱 和 使用以下格式:

名稱 ARN
AWSReservedSSO_permission-set-name_unique-suffix arn:aws:iam::aws-account-ID:role/aws-reserved/sso.amazonaws.com/AWSReservedSSO_permission-set-name_unique-suffix

例如,如果您建立授予資料庫管理員 AWS 帳戶存取權的許可集,則會使用下列名稱和 建立對應的角色ARN:

名稱 ARN
AWSReservedSSO_DatabaseAdministrator_1234567890abcdef arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/eu-west-2/AWSReservedSSO_DatabaseAdministrator_1234567890abcdef

如果您刪除 AWS 帳戶中此許可集的所有指派,IAM身分中心建立的對應角色也會一併刪除。如果您稍後對相同的許可集進行新的指派, IAM Identity Center 會為許可集建立新的角色。ARN 新角色的名稱和 包含不同的唯一尾碼。在此範例中,唯一的尾碼是 abcdef0123456789

名稱 ARN
AWSReservedSSO_DatabaseAdministrator_abcdef0123456789 arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/eu-west-2/AWSReservedSSO_DatabaseAdministrator_abcdef0123456789

新名稱和角色ARN的尾碼變更將導致任何參考原始名稱 和 ARN 的政策 out-of-date中斷使用對應許可集的個人存取。例如,如果在下列組態中ARN參考原始 ,則角色ARN的 變更會中斷許可集使用者的存取權:

  • 當您使用 進行叢集存取時,在 Amazon Elastic Kubernetes Service (Amazon EKS) 叢集aws-auth ConfigMapaws-auth ConfigMap 檔案中。

  • 在適用於 AWS Key Management Service (AWS KMS) 金鑰的資源型政策中。此政策也稱為金鑰政策。

注意

我們建議您使用 Amazon EKS存取項目來管理對 Amazon EKS叢集的存取。這可讓您使用IAM許可來管理可存取 Amazon EKS叢集的主體。透過使用 Amazon EKS存取項目,您可以使用具有 Amazon EKS許可的IAM主體來重新取得叢集的存取,而無需聯絡 AWS Support。

雖然您可以更新大多數 AWS 服務的資源型政策,以ARN針對對應至許可集的角色參考新的 ,但您必須擁有在 中IAM為 Amazon 建立的備份角色EKS,以及 AWS KMS 如果ARN變更的話。對於 Amazon EKS,備份IAM角色必須存在於 中aws-auth ConfigMap。對於 AWS KMS,它必須存在於您的金鑰政策中。如果您沒有具有更新 aws-auth ConfigMap或 AWS KMS 金鑰政策許可的備份IAM角色,請聯絡 AWS Support 以重新取得這些資源的存取權。

避免存取中斷的建議

為了避免因 中與許可集對應的ARN角色變更而導致存取中斷,建議您執行下列動作。

  • 維護至少一個許可集指派。

    在包含您在 aws-auth ConfigMap Amazon 的 中參考的角色EKS、 中的金鑰政策 AWS KMS,或其他 以資源為基礎的政策的 AWS 帳戶中,維護此指派 AWS 服務。

    例如,如果您建立EKSAccess許可集並從ARN AWS 帳戶 參考對應的角色111122223333,則請將管理群組永久指派給該帳戶中的許可集。由於指派是永久性的, IAM Identity Center 不會刪除對應的角色,這會消除重新命名風險。管理群組一律可以存取,而不會有權限提升的風險。

  • 對於使用 aws-auth ConfigMap和 的 Amazon EKS叢集 AWS KMS:包含在 中建立的角色IAM。

    如果您在 ARNs Amazon EKS叢集的 或 AWS KMS 金鑰的金鑰政策中參考 aws-auth ConfigMap 中許可集的角色,我們建議您也包含至少一個您在 中建立的角色IAM。角色必須允許您存取 Amazon EKS叢集或管理 AWS KMS 金鑰政策。許可集必須能夠擔任此角色。如此一來,如果許可集ARN的角色變更,您可以在 aws-auth ConfigMap或 AWS KMS 金鑰政策ARN中更新對 的參考。下一節提供如何為在 中建立的角色建立信任政策的範例IAM。角色只能由 AdministratorAccess 許可集擔任。

自訂信任政策範例

以下是自訂信任政策的範例,該政策提供AdministratorAccess許可集,可存取在 中建立的角色IAM。此政策的關鍵元素包括:

  • 此信任政策的主體元素會指定 AWS 帳戶主體。在此政策中, AWS 帳戶中111122223333具有 sts:AssumeRole 許可的主體可以擔任在 中建立的角色IAM。

  • 此信任政策Condition element的 會指定可擔任在 中建立之角色之主體的其他需求IAM。在此政策中,具有下列角色的許可集ARN可以擔任該角色。

    arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/eu-west-2/AWSReservedSSO_AdministratorAccess_*"
    注意

    Condition 元素包含 ArnLike 條件運算子,並在許可集角色 結尾使用萬用字元ARN,而不是唯一的尾碼。這表示,即使許可集的角色變更,政策IAM仍會允許許可集擔任在 中建立ARN的角色。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::111122223333:role/aws-reserved/sso.amazonaws.com/eu-west-2/AWSReservedSSO_AdministratorAccess_*" } } } ] }

    如果意外刪除並重新建立許可集或許可集的所有指派 AWS KMS keys,包括您在此類政策IAM中建立的角色,將提供您 Amazon EKS叢集或其他 AWS 資源的緊急存取權。