AWS Identity and Access Management について
まずはじめに用語整理
- リソース
- IAM に保存されているユーザー、グループ、ロール、ポリシー、および ID プロバイダー。AWS サービスと同様に、IAM のリソースを追加、編集、削除することができます。
- ID
- 識別し、グループ化するために使用される IAM リソースオブジェクト。IAM ユーザーにポリシーをアタッチすることができます。ユーザー、グループ、およびロールなどがあります。
- エンティティ
- AWS によって認証に使用される IAM リソースオブジェクト。たとえば、IAM ユーザー、フェデレーションユーザー、引き受ける IAM ロールです。
- プリンシパル
- AWS にサインインし、リクエストを作成するために AWS アカウントのルートユーザー、IAM ユーザー、または IAM ロールを使用する人またはアプリケーション。
AWSユーザーに対して AWSのリソースへのアクセスできる範囲やアクセス方法を安全に制御するためのウェブサービスです。IAM により、どのユーザーが AWS リソースを使用できるか(認証)、また、それらのユーザーがどのリソースをどのような方法で使用できるか(認可)を制御できます。
##IAM のベストプラクティス
- AWS アカウントのルートユーザー アクセスキーをロックする
- MFAを設定すること
- 個々の IAM ユーザーの作成
- IAM ユーザーへのアクセス許可を割り当てるためにグループを使用する
- 最小権限を付与する
- IAM ポリシーを作成する場合、最小限のアクセス権を付与するという標準的なセキュリティアドバイスに従うか、タスクの実行に必要なアクセス許可のみ付与
- AWS 管理ポリシーを使用したアクセス許可の使用開始
- インラインポリシーではなくカスタマー管理ポリシーを使用する
- ユーザーの強力なパスワードポリシーを設定
- MFA の有効化
- Amazon EC2 インスタンスで実行するアプリケーションに対し、ロールを使用する
- ロールを使用したアクセス許可の委任
- アカウント間でセキュリティ認証情報を共有しない
- アクセスキーを共有しない
- 認証情報を定期的にローテーションする
- 不要な認証情報を削除する
- 追加セキュリティに対するポリシー条件を使用する
- AWS アカウントのアクティビティの監視
- Cloudfront
- CloudWatch
- CloudTrail
- Config
- S3
##IAM Access Analyzer とは
IAM Access Analyzer は、アカウント内のどのリソースを外部プリンシパルと共有しているかを知らせます
サポートされているリソースタイプ
- Amazon Simple Storage Service バケット
- AWS Identity and Access Management ロール
- AWS Key Management Service キー
- AWS Lambda の関数とレイヤー
- Amazon Simple Queue Service キュー
##Amazon EventBridge による AWS IAM Access Analyzer のモニタリング
Access Analyzer は、各結果の生成時、既存の結果の状態の変更時、および結果の削除時に EventBridge にイベントに送信します。結果および結果に関する通知を受信するには、Amazon EventBridge でイベントルールを作成する必要があります。イベントルールを作成するときに、ルールに基づいてトリガーするターゲットアクションを指定することもできます。たとえば、新しい結果のイベントが Access Analyzer から返されたときに Amazon SNS トピックをトリガーするイベントルールを作成できます。
#参考文献
- AWS再入門 AWS IAM (Identity and Access Management) 編