本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用IAM身分識別中心的服務連結角色
AWS IAM Identity Center 使用 AWS Identity and Access Management (IAM) 服務連結角色。服務連結角色是直接連結至IAM身分識別中心的唯一IAM角色類型。它由 IAM Identity Center 預先定義,包含服務代表您呼叫其他服 AWS 務所需的所有權限。如需詳細資訊,請參閱 服務連結角色。
服務連結角色可讓您輕鬆設定IAM身分識別中心,因為您不需要手動新增必要的權限。IAMIdentity Center 會定義其服務連結角色的權限,除非另有定義,否則只有IAM身分識別中心可以擔任其角色。定義的權限包括信任原則和權限原則,而且該權限原則無法附加至任何其他IAM實體。
如需支援服務連結角色之其他服務的相關資訊,請參閱使用的AWS 服務,IAM並在服務連結角色欄中尋找具有是的服務。選擇具有連結的是,以檢視該服務的服務連結角色文件。
IAM身分識別中心的服務連結角色權限
IAMIdentity Center 使用名為的服務連結角色AWSServiceRoleForSSO來授與IAM身分識別中心權限,以代表您管理 AWS 資源,包括IAM角色、原則和 SAML IdP。
服 AWSServiceRoleForSSO 務連結角色會信任下列服務擔任該角色:
-
IAM身分識別中心 (服務前置碼:
sso
)
AWSServiceRoleForSSO 服務連結的角色權限原則可讓IAM身分識別中心針對路徑「/aws-保留 /sso.amazonaws.com/」上的角色完成下列項目,且名稱前置詞為「_」:AWSReservedSSO
-
iam:AttachRolePolicy
-
iam:CreateRole
-
iam:DeleteRole
-
iam:DeleteRolePermissionsBoundary
-
iam:DeleteRolePolicy
-
iam:DetachRolePolicy
-
iam:GetRole
-
iam:ListRolePolicies
-
iam:PutRolePolicy
-
iam:PutRolePermissionsBoundary
-
iam:ListAttachedRolePolicies
AWSServiceRoleForSSO 服務連結的角色權限原則可讓 IAM Identity Center 在名稱前置詞為「AWSSSO_」的SAML提供者上完成下列操作:
-
iam:CreateSAMLProvider
-
iam:GetSAMLProvider
-
iam:UpdateSAMLProvider
-
iam:DeleteSAMLProvider
AWSServiceRoleForSSO 服務連結的角色權限原則可讓 IAM Identity Center 在所有組織上完成下列作業:
-
organizations:DescribeAccount
-
organizations:DescribeOrganization
-
organizations:ListAccounts
-
organizations:ListAWSServiceAccessForOrganization
-
organizations:ListDelegatedAdministrators
AWSServiceRoleForSSO 服務連結的角色權限原則可讓 IAM Identity Center 在所有IAM角色 (*) 上完成下列作業:
-
iam:listRoles
AWSServiceRoleForSSO 服務連結的角色權限原則允許IAM身分識別中心在「arn: aw: iam::: *: 角色/sso.amazonaws.com/」上完成下列項目:aws-service-roleAWSServiceRoleForSSO
-
iam:GetServiceLinkedRoleDeletionStatus
-
iam:DeleteServiceLinkedRole
角色權限原則可讓IAM身分識別中心對資源完成下列動作。
{ "Version":"2012-10-17", "Statement":[ { "Sid":"IAMRoleProvisioningActions", "Effect":"Allow", "Action":[ "iam:AttachRolePolicy", "iam:CreateRole", "iam:DeleteRolePermissionsBoundary", "iam:PutRolePermissionsBoundary", "iam:PutRolePolicy", "iam:UpdateRole", "iam:UpdateRoleDescription", "iam:UpdateAssumeRolePolicy" ], "Resource":[ "arn:aws:iam::*:role/aws-reserved/sso.amazonaws.com/*" ], "Condition":{ "StringNotEquals":{ "aws:PrincipalOrgMasterAccountId":"${aws:PrincipalAccount}" } } }, { "Sid":"IAMRoleReadActions", "Effect":"Allow", "Action":[ "iam:GetRole", "iam:ListRoles" ], "Resource":[ "*" ] }, { "Sid":"IAMRoleCleanupActions", "Effect":"Allow", "Action":[ "iam:DeleteRole", "iam:DeleteRolePolicy", "iam:DetachRolePolicy", "iam:ListRolePolicies", "iam:ListAttachedRolePolicies" ], "Resource":[ "arn:aws:iam::*:role/aws-reserved/sso.amazonaws.com/*" ] }, { "Sid":"IAMSLRCleanupActions", "Effect":"Allow", "Action":[ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus", "iam:DeleteRole", "iam:GetRole" ], "Resource":[ "arn:aws:iam::*:role/aws-service-role/sso.amazonaws.com/AWSServiceRoleForSSO" ] }, { "Sid": "IAMSAMLProviderCreationAction", "Effect": "Allow", "Action": [ "iam:CreateSAMLProvider" ], "Resource": [ "arn:aws:iam::*:saml-provider/AWSSSO_*" ], "Condition": { "StringNotEquals": { "aws:PrincipalOrgMasterAccountId": "${aws:PrincipalAccount}" } } }, { "Sid": "IAMSAMLProviderUpdateAction", "Effect": "Allow", "Action": [ "iam:UpdateSAMLProvider" ], "Resource": [ "arn:aws:iam::*:saml-provider/AWSSSO_*" ] }, { "Sid":"IAMSAMLProviderCleanupActions", "Effect":"Allow", "Action":[ "iam:DeleteSAMLProvider", "iam:GetSAMLProvider" ], "Resource":[ "arn:aws:iam::*:saml-provider/AWSSSO_*" ] }, { "Effect":"Allow", "Action":[ "organizations:DescribeAccount", "organizations:DescribeOrganization", "organizations:ListAccounts", "organizations:ListAWSServiceAccessForOrganization", "organizations:ListDelegatedAdministrators" ], "Resource":[ "*" ] }, { "Sid":"AllowUnauthAppForDirectory", "Effect":"Allow", "Action":[ "ds:UnauthorizeApplication" ], "Resource":[ "*" ] }, { "Sid":"AllowDescribeForDirectory", "Effect":"Allow", "Action":[ "ds:DescribeDirectories", "ds:DescribeTrusts" ], "Resource":[ "*" ] }, { "Sid":"AllowDescribeAndListOperationsOnIdentitySource", "Effect":"Allow", "Action":[ "identitystore:DescribeUser", "identitystore:DescribeGroup", "identitystore:ListGroups", "identitystore:ListUsers" ], "Resource":[ "*" ] } ] }
您必須設定權限,才能允許IAM實體 (例如使用者、群組或角色) 建立、編輯或刪除服務連結角色。如需詳細資訊,請參閱IAM使用指南中的服務連結角色權限。
建立IAM身分識別中心的服務連結角色
您不需要手動建立一個服務連結角色。啟用後,IAMIdentity Center 會在組織內的所有帳戶中建立服務連結角色。 AWS IAMIdentity Center 也會在隨後新增至組織的每個帳戶中建立相同的服務連結角色。此角色可讓IAM身分識別中心代表您存取每個帳戶的資源。
備註
-
如果您已登入 AWS Organizations 管理帳戶,它會使用您目前登入的角色,而非服務連結角色。這樣可以防止權限升級。
-
當 IAM Identity Center 在 AWS Organizations 管理帳戶中執行任何IAM作業時,所有作業都會使用IAM主體的認證進行。如此一來,登 CloudTrail 入就能看見管理帳戶中所有權限變更者。
重要
如果您在 2017 年 12 月 7 日之前使用IAM身分識別中心服務,當它開始支援服務連結角色時,則IAM身分識別中心會在您的帳戶中建立該 AWSServiceRoleForSSO 角色。若要深入瞭解,請參閱我的IAM帳戶中出現新角色。
若您刪除此服務連結角色,之後需要再次建立,您可以在帳戶中使用相同程序重新建立角色。
編輯IAM身分識別中心的服務連結角色
IAM身分識別中心不允許您編輯 AWSServiceRoleForSSO 服務連結的角色。因為有各種實體可能會參考服務連結角色,所以您無法在建立角色之後變更角色名稱。但是,您可以使用編輯角色的描述IAM。如需詳細資訊,請參閱IAM使用指南中的編輯服務連結角色。
刪除IAM身分識別中心的服務連結角色
您不需要手動刪除 AWSServiceRoleForSSO 角色。從 AWS 組織中移除時,IAMIdentity Center 會自動清除資源,並從該 AWS 帳戶資源中刪除服務連結的角色。 AWS 帳戶
您也可以使用IAM主控台IAMCLI、或手動刪除服務連結角色。IAM API若要執行此操作,您必須先手動清除服務連結角色的資源,然後才能手動刪除它。
注意
當您嘗試刪除資源時,如果 IAM Identity Center 服務正在使用此角色,則刪除可能會失敗。若此情況發生,請等待數分鐘後並再次嘗試操作。
若要刪除使用的IAM身分識別中心資源 AWSServiceRoleForSSO
-
移除使用者和群組存取權適用於所有具有存取權的使用者和群組 AWS 帳戶。
-
刪除權限集您已與相關聯的 AWS 帳戶.
若要使用手動刪除服務連結角色 IAM
使用IAM主控台IAMCLI、或刪除 AWSServiceRoleForSSO服務連結角色。IAM API如需詳細資訊,請參閱IAM使用指南中的刪除服務連結角色。