アセットグラフ
アセットグラフは、AWSアセットとIAM権限の関係を1つのグラフで可視化します。
単純なアセットリストを超えて、権限関係、信頼関係、ポリシー接続構造(エッジ)を組み合わせて分析し、 AWS環境で誰がどのアセットにどのような権限を持っているかを理解できます。
1. レイアウトの概要

アセットグラフ画面は以下のセクションで構成されています:
1.1. グラフエリア
AWSアセットとIAMエンティティがノードとして表示され、それらの関係がエッジとして可視化されます。
グラフでは以下を確認できます:
- IAMロール / ユーザー / ポリシーの関係
- AWSアセット間の接続構造
- 権限フローと信頼関係
1.2. フィルターとコントロール
グラフ上部のコントロールで表示されるアセットを調整します。
- 検索: 名前またはARNで検索
- リソースタイプフィルター: リソースタイプでフィルター – IAM / コンピュート / ストレージなど
- リスクレベルフィルター: 権限リスクレベルでフィルター
- 同期ボタン: 最新のアセットとIAM関係データに基づいてグラフを再生成
1.3. アセット詳細パネル
グラフ内のノードをクリックするとアセット詳細パネルが開きます。
利用可能な情報:
- 基本アセット情報(名前、ARN、リソースタイプ)
- アタッチされたポリシーと権限
- 権限インサイト分析結果
- 関連アセットと関係
2. グラフ構造
アセットグラフは、AWS環境に基づいてアセットと権限の関係をグラフ形式で表します。
2.1. ノード
グラフ内の各ノードはAWSアセットまたはIAMエンティティを表します。
主なノードタイプ:
- IAMユーザー
- IAMロール
- IAMグループ
- IAMポリシー
- AWSリソース(EC2、S3、RDSなど)
ノードはAWS環境で権限を保持するエンティティまたは権限の対象となるエンティティを表します。
2.2. エッジ
エッジはアセット間の権限または信頼関係を表します。
主な関係タイプ:
| エッジ | 意味 |
|---|---|
| TRUSTS | ロール間の信頼関係(Assume Role) |
| HAS_POLICY | エンティティ(ユーザー/ロール/グループ)がポリシーを所有 |
| ALLOWS | ポリシーが特定のAWSアクションを許可 |
| MEMBER_OF | ユーザーがグループに所属 |
| ATTACHED_TO | ポリシーがエンティティにアタッチ |
これらの関係により権限フロー分析が可能になります。
3. グラフ同期(Sync)
アセットグラフを生成するには、アセットとIAM関係データを同期する必要があります。
同期プロセス
Syncを実行すると以下の2つの操作が実行されます:
1️⃣ AWSアセット同期
以下のリソースをスキャンします:
- EC2
- Lambda
- S3
- RDS
- DynamoDB
- SQS / SNS
- Secrets Manager
- KMS
- IAM
このプロセスでアセットメタデータとベースラインリスク情報を収集します。
2️⃣ IAM関係同期
IAMエンティティとポリシードキュメントを分析して以下の関係を構築します:
- ロール / ユーザー / グループの関係
- ポリシーアタッチメント構造
- 権限許可関係
この2つのデータセットを組み合わせてアセットグラフを生成します。
4. 権限インサイト
権限インサイトはIAMポリシーを分析して権限リスクレベルを計算します。
分析項目:
- 総アクション数 – ポリシーで許可されたアクションの総数
- 一意のサービス数 – アクセス可能なAWSサービスの数
- ワイルドカードアクション/リソース –
*権限が使用されているか - 危険なアクションの検出
iam:*PassRoleCreateAccessKeyPutUserPolicyなど
- 管理者権限の状態
- リスクスコア(0〜100)
分析結果はIAMポリシーノードのプロパティとしても含まれているため、グラフ内で直接確認できます。
5. アセットグラフの使い方
アセットグラフにより以下のセキュリティ分析が可能です:
- 最も強力な権限を持つIAMエンティティを特定
- ワイルドカード(
*)権限を持つポリシーを検出 - 管理者権限付与の現状を分析
- クロスアカウントアクセスリスクを特定
- 最小権限の原則への準拠を確認
グラフベースの分析により、権限構造とセキュリティリスクを一目で把握できます。