選項 1:應用程式可以擔任連結至 IAM Roles Anywhere 設定檔的任何角色 - AWS 方案指引

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

選項 1:應用程式可以擔任連結至 IAM Roles Anywhere 設定檔的任何角色

在此案例中,已從 AWS 私有憑證授權單位 執行個體在 AWS Certificate Manager (ACM) 中佈建兩個憑證,並與需要存取 AWS 資源的應用程式共用。這些應用程式可以擔任任何連結至 IAM Roles Anywhere 設定檔的角色。這是因為信任政策不會限制哪些應用程式可以採用信任政策。

注意

在此案例中,應用程式不需要有單獨的憑證。他們可以共用單一憑證。

當應用程式擔任角色時,許可是 IAM 角色和 IAM Roles Anywhere 設定檔中明確允許的收斂。使用此方法,您可以透過 IAM Roles Anywhere 設定檔限制工作階段許可,無論 IAM 角色中允許的其他許可為何。

下圖顯示每個應用程式擁有的存取權。應用程式會被拒絕存取某些 AWS 資源,因為它們在 IAM 角色和 IAM Roles Anywhere 設定檔中都未明確授予存取權。如果登入資料協助程式呼叫包含角色 1 的 Amazon Resource Name (ARN),則會授予應用程式臨時安全登入資料,以透過角色 1 存取儲存貯體 1。 如果登入資料協助程式呼叫包含角色 2 的 ARN,則會授予應用程式臨時安全登入資料,以透過角色 2 存取儲存貯體 2。

應用程式使用相同的憑證,並且可以存取多個角色。設定檔限制存取。

角色 1角色 2 信任政策設定為允許 IAM Roles Anywhere 擔任角色、設定來源身分和標記工作階段。以下是允許應用程式擔任連結至 IAM Roles Anywhere 設定檔之任何角色的範例信任政策:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity", "sts:TagSession" ], "Condition": { "StringEquals": { "sts:SourceIdentity": [ "${sourceIdentityPrefix}${sourceIdentityValue}" ] } } } ] }

如需角色信任政策及如何修改此範例的詳細資訊,請參閱 IAM Roles Anywhere 文件中的信任政策

應用程式 1應用程式 2 的範例角色和設定檔政策包含在本指南的附錄:範例設定檔和角色政策區段中。