導入
社員が数十人・数百人になると、AWSアカウントごとにIAMユーザーを作るのは現実的ではありません。「社内の認証基盤とAWSを連携させたい」というニーズに応えるのが、IAM Identity Centerとフェデレーションです。
説明
フェデレーション(Federation) とは、既存の認証基盤(社内AD、Google Workspaceなど)の認証情報をそのまま使って、AWSへの一時的なアクセスを得る仕組みです。SAML 2.0 や OIDC(OpenID Connect) という標準プロトコルで実現します。
IAM Identity Center(旧称 AWS SSO)は、複数のAWSアカウント・アプリケーションへのアクセスを一元管理するサービスです。
flowchart LR
AD["社内AD/IdP"] -- "SAMLでフェデレーション" --> IC["IAM Identity Center"]
IC -- "シングルサインオン" --> A1["AWSアカウント1"]
IC -- "シングルサインオン" --> A2["AWSアカウント2"]
IC -- "シングルサインオン" --> A3["AWSアカウント3"]
- 社員は社内IDでサインインするだけで、権限のある複数のAWSアカウントに切り替えてアクセスできる
- IAMユーザーを個別に作る必要がなく、退職時のアカウント無効化も社内AD側で一元管理できる
- AWS Organizations(レッスン11)と組み合わせて使うのが標準構成
Amazon Cognito は少し役割が異なり、こちらは自社が作るWebアプリ・モバイルアプリのエンドユーザー認証を担うサービスです。
| 機能 | 役割 |
|---|---|
| ユーザープール(User Pool) | エンドユーザーのサインアップ・サインイン・ID管理(認証) |
| IDプール(Identity Pool) | 認証済みユーザーに一時的なAWS認証情報を発行(認可) |
IAM Identity Centerは「社員がAWS管理コンソール/CLIを使うための認証」、Cognitoは「一般ユーザーが自社アプリにログインするための認証」と使い分けます。
読んでみよう
問題文に「社員」「運用担当者」「複数アカウントの一元管理」とあればIAM Identity Center、「アプリのエンドユーザー」「モバイルアプリのログイン機能」とあればCognito、と主語で見分けるのがコツです。