導入
第7章ではIAMを学びましたが、IAMが管理するのは「AWSを操作する人」です。では、自社アプリを使うエンドユーザー(顧客)のログインはどう扱うのでしょうか。
説明
利用者の種類によって、使うサービスが分かれます。
| サービス | 誰のIDを扱うか |
|---|---|
| AWS IAM | AWSリソースを操作する人・サービス(社内の管理者や開発者) |
| IAM Identity Center(旧AWS SSO) | 複数のAWSアカウントを行き来する従業員。1回のサインインで各アカウントへ(シングルサインオン) |
| Amazon Cognito | 自社アプリを使うエンドユーザー(顧客)のサインアップ・サインイン。外部アカウントでのログインにも対応 |
| AWS Directory Service | 社内のMicrosoft Active DirectoryをAWSでも使えるようにする |
セキュリティの管理・統合系サービスも押さえておきましょう。
| サービス | 何をするか |
|---|---|
| AWS Security Hub | GuardDuty・Inspector・Macieなど各種セキュリティサービスの検出結果を1か所に集約し、基準に沿っているかを一覧で確認できる |
| AWS Firewall Manager | 複数アカウント・複数リソースのWAFやセキュリティグループのルールをまとめて適用・管理する |
| AWS Network Firewall | VPC単位の高度な通信検査・遮断(レッスン67) |
| AWS Resource Access Manager(RAM) | 自分のリソースを他のAWSアカウントと安全に共有する |
flowchart LR
Emp["従業員"] --> IDC["IAM Identity Center(SSO)"]
IDC --> Acc["複数のAWSアカウント"]
Cust["アプリの利用者(顧客)"] --> Cog["Cognito"]
Cog --> App["自社アプリ"]
GD["GuardDuty / Inspector / Macie"] --> SH["Security Hub(結果を集約)"]
読んでみよう
「社内の人がAWSを触る=IAM/Identity Center」「顧客がアプリにログイン=Cognito」「検出結果の集約=Security Hub」。IAMとCognitoの取り違えは頻出の落とし穴です。