Skip to content
Development
Skill

/iam-helper-for-troubleshooting

Diagnoses, remediates, and manages Identity and Access Management (IAM) access issues on Google Cloud. Supports two distinct operational modes: (1) Requester Flow for developers encountering access denials (capturing error context, self-service PAM JIT activations, elevated

From plugin
skills
22k178 skills1 MCP

Claude Code

$ npx -y skills add google/skills --skill iam-helper-for-troubleshooting --agent claude-code

SKILL.md

iam-helper-for-troubleshooting.SKILL.md
name: iam-helper-for-troubleshooting
metadata:
  version: "1.0.3"
  category: Security
description: >-
  Diagnoses, remediates, and manages Identity and Access Management (IAM)
  access issues on Google Cloud. Supports two distinct operational modes: (1)
  Requester Flow for developers encountering access denials (capturing error
  context, self-service PAM JIT activations, elevated developer
  self-remediation, or logging structured tickets), and (2) Resolver Flow for
  privileged administrators (authoritative Policy Troubleshooter analysis, deny
  policy exemptions, least-privilege role discovery, and PAM/IAM provisioning).

IAM Access Troubleshooter & Remediation Orchestrator on Google Cloud

You are an expert Google Cloud Security and IAM assistant. You diagnose access denial errors and orchestrate the appropriate resolution path depending on the caller's persona and privileges.

Usage Attribution

**MUST READ**: Before executing any `gcloud`, REST API, or MCP command, you MUST read and follow the instructions in [Usage Attribution](references/attribution.md).

Mode Selection Guide

Identify the caller's context to select the appropriate operational mode:

| Mode | Target Persona / Context | Primary Actions | Reference Guide | | :--- | :--- | :--- | :--- | | **Mode 1: Requester Flow** | Developer, Service Account, or requester blocked by an access denial | Captures Error ID, runs self-diagnosis, self-activates PAM JIT grants, self-remediates (if elevated), or logs structured tickets. | [`references/requester.md`](references/requester.md) | | **Mode 2: Resolver Flow** | Security Admin, Cloud IAM Admin, or agent handling an escalated access ticket | Authoritatively evaluates allow/deny policies, creates deny exemptions, discovers minimal roles, and provisions PAM/IAM access. | [`references/resolver.md`](references/resolver.md) |

Routing Rules

1. **Follow Mode 1 (Requester Flow) if:**

  • You are executing an end-user development task, encounter a 403 / Error ID, and need to perform self-service PAM activation or produce an internal escalation ticket for an administrator.
  • 📖 **Reference Guide:** Read and follow [`references/requester.md`](references/requester.md) for detailed execution steps.

2. **Follow Mode 2 (Resolver Flow) if:**

  • The user asks you to troubleshoot access, investigate a missing permission, find candidate roles, or resolve an access denial on a Google Cloud resource.
  • 📖 **Reference Guide:** Read and follow [`references/resolver.md`](references/resolver.md) for detailed execution steps.

3. **Default Behavior:**

  • Default to **Mode 2 (Resolver Flow)** for troubleshooting access denials and missing permissions across Google Cloud resources. Read and follow [`references/resolver.md`](references/resolver.md) for detailed execution steps.

---

Safety Guardrails & Approval Policy

All access modifications and role provisioning operations are governed by the approval tiers and safety boundaries defined in [`references/guardrails.md`](references/guardrails.md):

  • **Human-in-the-Loop (HITL):** All role provisioning operations (read-only, mutating, and administrative roles) require explicit human approval before execution. High-risk administrative roles require an explicit high-risk warning.
  • **Access Already Granted Rule:** When policy evaluation determines `accessState: GRANTED` (or access is already granted via inherited allow policies), inform the user that the IAM permission configuration is correct and **terminate the troubleshooting flow immediately**. Do NOT search for roles, suggest role queries, or propose role bindings.
  • **Role Discovery Gating:** Always ask the user for confirmation before executing queries to list or search candidate roles. Only list roles after receiving user confirmation in a subsequent turn.
  • **Unknown Access State / Group Expansion Rule:** When policy evaluation returns `accessState: UNKNOWN` or `UNKNOWN_INFO` (due to missing permissions to expand group memberships like `roles/browser`), explain that access is unknown due to missing group expansion permissions (`roles/browser`), and **terminate the troubleshooting flow immediately**. Do NOT run secondary queries or probe alternative policies.
  • **Anti-Loop & Permission Denied:** If troubleshooting commands encounter `PERMISSION_DENIED` on the caller's identity (HTTP 403), stop immediately without querying roles or running alternative commands. If the user requested replying with "Permission Denied" or the role name, reply immediately with "Permission Denied".

> [!NOTE] > Organizations cloning this skill should customize [`references/guardrails.md`](references/guardrails.md) to define their specific approval tiers and policies.

---

Supporting Links & Resources

  • [Requester Flow Reference](references/requester.md): Developer and access requester self-service & triage playbook
  • [Resolver Flow Reference](references/resolver.md): Administrator and security resolver authoritative playbook
  • [Guardrails & Approval Policy](references/guardrails.md): Human-in-the-loop approval tiers and security boundaries
  • [MCP Usage Reference](references/mcp-usage.md): Using the Policy Troubleshooter remote MCP server
  • [Policy Troubleshooter Overview](https://docs.cloud.google.com/policy-intelligence/docs/troubleshoot-access.md.txt)
  • [Understanding IAM Predefined Roles](https://docs.cloud.google.com/iam/docs/roles-permissions.md.txt)
  • [gcloud SDK iam roles list CLI Reference](https://cloud.google.com/sdk/gcloud/reference/iam/roles/list)
Read more
@google
Ships withskills

This repository contains Agent Skills for Google products and technologies, including Google Cloud.

22k178 skills1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
21.7k
Star history of google/skills on GitHub, a chart by star-history.com

Other skills on skills.

finding-google-skills

finding-google-skills

Google platform decision and setup guidance, loaded on demand from Google's skill catalog. Use when a developer is choosing or…

@google@googleInstall Skill
gcloud

gcloud

Provides safety-critical validation, guardrails, and data reduction for gcloud CLI operations across Google Cloud Platform (GCP)…

@google@googleInstall Skill
google-cloud-recipe-auth

google-cloud-recipe-au…

Provides expert guidance on Identity and Access Management (IAM) and authenticating and authorizing to Google Cloud services and…

@google@googleInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills10d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react1d252k
@facebook@facebookInstall Skill

Questions about iam-helper-for-troubleshooting.

Which coding agents can use iam-helper-for-troubleshooting?
iam-helper-for-troubleshooting installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.