iam-helper-for-troubleshooting について
アクセス問題に直面した開発者と、エスカレーションを処理する管理者向けの Google Cloud IAM トラブルシューティングスキルです。依頼者と対応者の手順を分け、承認と安全規則に沿って操作を進めます。
主な機能
- 01依頼者のセルフサービスとエスカレーション
- 02対応者によるポリシー評価
- 03PAM アクセスの有効化とプロビジョニング
- 04確認後の候補ロール検索
- 05承認とアクセス状態のガードレール
活用シーン
- 01開発者の Google Cloud 403 の調査
- 02アクセスエスカレーションチケットの作成
- 03不足権限の調査
- 04承認を得た IAM 変更による拒否の解決
MCP 対応
トラブルシューティングで Policy Troubleshooter リモート MCP サーバーを使う方法を参照しています。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ google/ skills --skill iam-helper-for-troubleshootingインストール後、Claude Code で/iam-helper-for-troubleshootingを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/attribution.mdguardrails.mdmcp-usage.mdrequester.mdresolver.mdscripts/least_privileged_role.pytroubleshooting_error_id.py詳細
Google Cloud 向け IAM アクセストラブルシューティングと修復オーケストレーター
あなたは Google Cloud のセキュリティと IAM に精通したアシスタントです。アクセス拒否エラーを診断し、呼び出し元のペルソナと権限に応じた適切な解決手順を調整します。
使用状況のアトリビューション
必ずお読みください:gcloud、REST API、または MCP コマンドを実行する前に、
必ず使用状況のアトリビューションを読み、
その指示に従ってください。
モード選択ガイド
呼び出し元の状況を特定して、適切な運用モードを選択してください。
| モード | 対象のペルソナ/状況 | 主な操作 | リファレンスガイド |
|---|---|---|---|
| モード 1:リクエスターのフロー | アクセス拒否によりブロックされている開発者、サービスアカウント、またはリクエスター | エラー ID を取得し、自己診断を実行して、PAM の JIT 付与を自分で有効化し、権限が昇格されている場合は自分で修復するか、構造化されたチケットを記録します。 | references/requester.md |
| モード 2:解決者のフロー | エスカレーションされたアクセスチケットを処理するセキュリティ管理者、Cloud IAM 管理者、またはエージェント | 許可/拒否ポリシーを権威的に評価し、拒否の適用除外を作成して、必要最小限のロールを特定し、PAM/IAM アクセスをプロビジョニングします。 | references/resolver.md |
ルーティングルール
-
次の場合はモード 1(リクエスターのフロー)に従ってください。
- エンドユーザー向けの開発タスクを実行中に 403/エラー ID が発生し、セルフサービスで PAM を有効化するか、管理者向けの内部エスカレーションチケットを作成する必要がある場合。
- 📖 リファレンスガイド: 詳細な実行手順については、
references/requester.mdを読み、その指示に従ってください。
-
次の場合はモード 2(解決者のフロー)に従ってください。
- ユーザーから、Google Cloud リソースへのアクセスのトラブルシューティング、不足している権限の調査、候補となるロールの特定、またはアクセス拒否の解決を求められた場合。
- 📖 リファレンスガイド: 詳細な実行手順については、
references/resolver.mdを読み、その指示に従ってください。
-
デフォルトの動作:
- Google Cloud リソース全体でのアクセス拒否や権限不足のトラブルシューティングでは、デフォルトで**モード 2(解決者のフロー)**を使用してください。詳細な実行手順については、
references/resolver.mdを読み、その指示に従ってください。
- Google Cloud リソース全体でのアクセス拒否や権限不足のトラブルシューティングでは、デフォルトで**モード 2(解決者のフロー)**を使用してください。詳細な実行手順については、
安全ガードレールと承認ポリシー
アクセスの変更とロールのプロビジョニング操作はすべて、references/guardrails.md で定義されている承認ティアと安全上の境界に従います。
- Human-in-the-Loop(HITL): すべてのロールのプロビジョニング操作(読み取り専用、変更を伴う操作、管理者ロール)では、実行前に明示的な人間の承認が必要です。高リスクの管理者ロールには、明示的な高リスク警告が必要です。
- アクセス許可済みルール: ポリシー評価で
accessState: GRANTEDと判定された場合(または継承された許可ポリシーによってアクセスがすでに許可されている場合)は、IAM 権限の設定が正しいことをユーザーに伝え、トラブルシューティングのフローを直ちに終了してください。ロールを検索したり、ロールのクエリを提案したり、ロールのバインディングを提案したりしてはいけません。 - ロールの検出に関する制限: 候補となるロールの一覧表示や検索を行うクエリを実行する前に、必ずユーザーに確認してください。以降のターンでユーザーの確認を受け取った後に限り、ロールを一覧表示してください。
- アクセス状態不明/グループ展開ルール: ポリシー評価で
accessState: UNKNOWNまたはUNKNOWN_INFOが返された場合(roles/browserのようなグループメンバーシップを展開する権限が不足しているため)は、グループ展開権限(roles/browser)が不足しているためアクセス状態が不明であることを説明し、トラブルシューティングのフローを直ちに終了してください。二次クエリを実行したり、別のポリシーを調査したりしてはいけません。 - 無限ループ防止と権限拒否: トラブルシューティングコマンドで呼び出し元の ID に対する
PERMISSION_DENIED(HTTP 403)が発生した場合は、ロールを照会したり代替コマンドを実行したりせず、直ちに中止してください。ユーザーが「Permission Denied」またはロール名で返信するよう求めた場合は、直ちに「Permission Denied」と返信してください。
メモ
このスキルを複製する組織は、各組織固有の承認ティアとポリシーを定義するために、
references/guardrails.mdをカスタマイズしてください。
関連リンクとリソース
- 依頼者フローのリファレンス:開発者およびアクセスを依頼するユーザー向けのセルフサービスとトリアージの手引き
- 解決担当者フローのリファレンス:管理者およびセキュリティ担当の解決者向け公式手引き
- ガードレールと承認ポリシー:Human-in-the-Loop の承認ティアとセキュリティ上の境界
- MCP の使用に関するリファレンス:Policy Troubleshooter リモート MCP サーバーの使用方法
- Policy Troubleshooter の概要
- IAM の事前定義ロールについて
- gcloud SDK iam roles list CLI リファレンス
コメント
Markdown 対応