AWS IAM アイデンティティセンターを使用して、当社の AWS アカウントとアプリケーションへのアクセスをユーザーに提供したいと考えています。IAM アイデンティティセンターが私の AWS Identity and Access Management (IAM) のアイデンティティに影響するかどうかを知りたいと考えています。
簡単な説明
IAM アイデンティティセンターまたは IAM を使用して、従業員を AWS アカウントとアプリケーションにフェデレーションできます。
IAM フェデレーションでは、AWS アカウントごとに個別の SAML 2.0 または OIDC IdP をアクティベートできます。AWS アカウントに IAM ユーザーの代わりに ID プロバイダーを使用できます。詳細については、「ID プロバイダーとフェデレーション」を参照してください。
IAM アイデンティティセンターは IAM サービスリンクロールを使用します。サービスリンクロールでは、アクセス許可を手動で追加する必要はありません。詳細については、「IAM アイデンティティセンターでのサービスリンクロールの使用」を参照してください。
解決策
IAM アイデンティティセンターは、IAM で設定した ID フェデレーションとは独立しています。IAM アイデンティティセンターは、IAM ID やフェデレーション設定には影響しません。
IAM アイデンティティセンターは、サービスリンクロール AWSSOServiceRoleForSSO を使用して AWS リソースを管理するためのアクセス許可を付与します。AWS アカウントで AWS によって作成された AWSServiceRoleForSSO ロールは、次のような IAM 信頼ポリシーが設定された IAM アイデンティティセンターサービスのみを信頼します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "sso.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
サービスリンクロール AWSSoServiceRoleForSSO が作成する IAM ロールには、次のような IAM 信頼ポリシーがあります。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::444455556666:saml-provider/AWSSSO_ec48a2d3f5dc369d_DO_NOT_DELETE"
},
"Action": "sts:AssumeRoleWithSAML",
"Condition": {
"StringEquals": {
"SAML:aud": "signin.aws.amazon.com/saml"
}
}
}
]
}
注: この IAM ポリシーは、IAM アイデンティティセンターが自動的に作成する SAML プロバイダーのみを信頼します。
IAM フェデレーションでは、次のような信頼ポリシーを使用して AWS アカウントに IAM ロールを手動で作成する必要があります。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::444455556666:saml-provider/ExampleIdP"
},
"Action": "sts:AssumeRoleWithSAML",
"Condition": {
"StringEquals": {
"saml:edupersonorgdn": "ExampleOrg",
"saml:aud": "signin.aws.amazon.com/saml"
}
}
}
]
}
注: このポリシーがアタッチされている組織内の IAM エンティティのみが AWS アカウントにアクセスできます。
関連情報
AWS IAM アイデンティティセンター内でユーザーを作成して管理する方法
IAM アイデンティティセンターのクラウドアプリケーションへのユーザーアクセスを割り当てるにはどうすればよいですか?
IAM アイデンティティセンターのアクセス許可セットを使用するにはどうすればよいですか?
AWS における ID フェデレーション