はじめに
「やっぷ、やっぷーー」カーリング女子がくれた感動と余韻が今なお。
「やって、やってーー」一日勉強サボった自分への叱咤激励に聞こえたりします。
今回はVPC勉強予定でしたが、IAM続行に変更します、申し訳ありません。
前回のIAMに対し名人からご指摘頂き、本質を掴めていないことに気付きましたので。
IAMの重要事項
以下、基本をしっかりと理解しておきます。
詳細はAWSユーザーガイドで確認しました。
「IAMユーザー」と広義の「ユーザー」は別物
- 「IAMユーザー」はAWS内部のIDで、「AWS外部のユーザー」がAWSとやり取りするためのサービスアカウント
- ユーザーだけでなくアプリケーションも表す
- IAMユーザーの実体は「名前と認証情報」で構成される
※ 同じく、「IAMロール」(AWS内部のID)と広義の「ロール」(AWS外部の職務など表すロール)も区別が必要
AssumeRoleとPassRoleの違い
-
IAMロールとは
- 一時アクセス権をユーザー・アプリ・サービスに付与する
- 魔法のヘルメットで、一般人にかぶせたら一時的に秘密基地に入れる
- ユーザーのみならず、アプリやEC2などのサービスにもかぶせ、リソースへのアクセス許可を与える
-
AssumeRole
- アクションの一種
- ユーザーやサービスがIAMロールを引き受け、リソースへアクセス許可される
- 自己解釈: ヘルメットをかぶる行為
-
PassRole
- 権限(アクセス許可)の一種
- IAMロールを渡す側に必要な権限
- 自己解釈: 秘密基地責任者が持つ、ヘルメットかぶせられる権限
アクセスレベルの種類
ポリシーに記載されるアクションのアクセス許可は、レベル分けされている。
- リスト(List)
- 読み込み(Read)
- 書き込み(Write)
- アクセス権限管理(Permissions management)
アクセスコントロール(制御)の種類
アクセス制御には、ロールベースと属性ベース、2種類ある。
-
ロールベースのアクセル制御(RBAC)
- (AWS外部の)ユーザーやロールの職務機能に基づいて定義したアクセス許可
- IAMで従来から使用される認証モデルで、IAM管理ポリシーなどが含まれる
-
属性ベースのアクセス制御(ABAC)
- 属性(タグ付け)に基づいてアクセス許可を定義する認証戦略
- プリンシパルタグとリソースタグが一致する場合のみアクセス許可される(プリンシパルはリソースへのアクションをリクエストするユーザーやアプリ)
- 理解に役立った公式資料: IAM チュートリアル: タグに基づいて AWS リソースにアクセスするためのアクセス許可を定義する
アクセスアドバイザー
- IAMエンティティ(IAMユーザー、グループ、ロール)が最後にAWSサービスにアクセスした日付を表示
- IAMの各種設定が最小権限の原則に則しているか確認できる
- IAMポリシー内で未使用または最近使用されていないアクセス許可を識別
- 未使用のサービスに関するアクセス許可を削除
- 類似の使用パターンを持つユーザーをグループに再編成
クイズでリラックス
いきなりですが、クイズです。
IAM エンティティの代表的なクォータ(制限値)についてお答えください。
リソース | クォータ |
---|---|
IAM ユーザーに割り当てられるアクセスキー | ? |
AWS アカウント ルートユーザーに割り当てられたアクセスキー | ? |
AWS アカウントの別名 | ? |
IAM ユーザーがメンバーになれるグループ | ? |
グループの IAM ユーザー数 | ? |
IAM SAML プロバイダーのオブジェクトに関連付けられる ID プロバイダー (IdP) | ? |
SAML プロバイダーあたりのキー数 | ? |
IAM ユーザーのログインプロファイル | ? |
IAM グループにアタッチされた管理ポリシー | ? |
AWS アカウントごとの OpenId Connect ID プロバイダー | ? |
IAM ユーザーのアクセス許可の境界 | ? |
IAM ロールのアクセス許可の境界 | ? |
IAM ユーザーが使用中の MFA デバイス | ? |
AWS アカウント ルートユーザーで使用中の MFA デバイス | ? |
インスタンスプロファイルのロール | ? |
AWS アカウントの SAML プロバイダー | ? |
IAM ユーザーに割り当てられる署名用証明書 | ? |
IAM ユーザーに割り当てられた SSH パブリックキー | ? |
カスタマー管理ポリシーにアタッチできるタグ | ? |
インスタンスプロファイルにアタッチできるタグ | ? |
OpenID 接続 (OIDC) ID プロバイダーにアタッチできるタグ | ? |
IAM ロールにアタッチできるタグ | ? |
SAML ID プロバイダーにアタッチできるタグ | ? |
サーバー証明書にアタッチできるタグ | ? |
IAM ユーザーにアタッチできるタグ | ? |
仮想 MFA デバイスにアタッチできるタグ | ? |
AWS アカウントのユーザー | ? |
格納できる管理ポリシーのバージョン | ? |
正解はIAM エンティティのクォータに載っています。
おわりに
IAMの重要事項をピックアップし再理解しました。
机上だけでなく、AWSユーザーガイドのチュートリアルを実践することで、
理解がさらに深まる気がします。
次回こそVPCです、お楽しみに。