Skip to main content
Glama

Why

Cloud IAM scanners (Wiz, Snyk, GitHub Advanced Security) send your policies to their cloud. Regulated teams can't do that. IAM Sentinel finds privilege-escalation paths, wildcards, PassRole/roleAssignment abuse, public bindings, and data-exfil grants with a deterministic rule engine โ€” reproducible and auditable, not an LLM guess โ€” entirely on your infrastructure.

  • ๐Ÿ”’ Air-gapped โ€” no telemetry, no outbound calls (except an optional local model).

  • ๐ŸŽฏ Deterministic โ€” version-stamped findings from a rule engine, not hallucinations.

  • ๐Ÿ”Œ In your IDE โ€” native stdio MCP server for Cursor / Claude Code.

  • ๐Ÿงพ Auditable โ€” every scan persisted with actor, timestamp, SHA-256, and rule-pack version.

  • ๐Ÿ–ฅ๏ธ Runs anywhere โ€” CPU-only core; a GPU is only for the optional written remediation.

Quickstart

git clone https://github.com/Pratikchandrathakur/IAM-Sentinel && cd iam-sentinel
cp .env.example .env          # set API keys (Community tier needs no license)
docker compose up -d --build
open http://127.0.0.1:8080     # dashboard ยท API at /api/... ยท health at /api/health

Audit a policy (provider auto-detected):

curl -s http://127.0.0.1:8080/api/audit/iam -H "X-API-Key: $KEY" \
  -H "Content-Type: application/json" \
  -d '{"policy_json":"{\"Statement\":[{\"Effect\":\"Allow\",\"Action\":\"*\",\"Resource\":\"*\"}]}"}' | jq

No GPU / macOS? Set LLM_NARRATIVE_ENABLED=false โ€” you still get every deterministic finding. Full per-OS steps in INSTALL.md.

Use it inside your IDE (MCP)

{ "mcpServers": { "iam-sentinel": {
    "command": "python3", "args": ["/abs/path/to/iam-sentinel/mcp_stdio.py"],
    "env": { "AUTH_ENABLED": "false", "LLM_NARRATIVE_ENABLED": "false" }
}}}

Then ask your assistant: "Audit this IAM policy with iam-sentinel."

CI/CD guardrails โ€” block privilege escalation on every PR

Scan the IAM inside a Terraform plan (or raw policy files) and fail the build when a new escalation path appears. Findings show inline on the PR via SARIF. No server needed.

# .github/workflows/iam-guardrails.yml  (see examples/github-actions/)
- run: terraform show -json tf.plan > plan.json
- uses: Pratikchandrathakur/IAM-Sentinel@v1
  with: { tfplan: plan.json, fail-on: HIGH }

Or run the gate locally / in any CI (pure stdlib, offline):

python3 guardrails.py --tfplan plan.json --fail-on HIGH     # exit 1 = blocking findings
python3 guardrails.py policies/*.json --format sarif > iam.sarif

It extracts IAM from Terraform plans (AWS aws_iam_policy/roles, Azure azurerm_role_definition, GCP custom roles/bindings) โ€” no HCL parsing, using the resolved plan JSON.

No model required. Every scan returns a full deterministic remediation report (fixes + least-privilege skeleton) with zero external services. The optional local LLM is pure polish. Custom rules are a config drop-in โ€” see custom_rules.example.json (no code change).

What it detects

  • AWS โ€” 19 escalation techniques (Rhino/PMapper): AttachUserPolicy, PutRolePolicy, CreateAccessKey, PassRole+compute, UpdateAssumeRolePolicy, โ€ฆ; wildcards, NotAction traps, wildcard principals, unconditioned AssumeRole, data-exfil grants.

  • Azure โ€” roleAssignments/write, elevateAccess, Microsoft.Authorization/*, wildcard actions, scope breadth.

  • GCP โ€” primitive roles, allUsers bindings, setIamPolicy / serviceAccountTokenCreator / actAs.

Pricing

Open-core. Run it free; upgrade for seats, history, and enterprise controls (offline-licensed).

Tier

Price

Seats

Scans/mo

Adds

Community

Free

1

100

AWS/Azure/GCP ยท MCP ยท audit trail

Team

$199/mo

10

5,000

Remediation diff

Enterprise

$4,999/yr

โˆž

โˆž

SSO/RBAC ยท TLS ยท SLA

See the website or email krisprogrammer1@gmail.com for a pilot.

Tests

python3 tests/test_iam_engine.py    # + test_multicloud / test_store / test_mcp / test_auth / ...

License

Business Source License 1.1 (see LICENSE). Source is open; Community use is free (single user / evaluation). Team, CI/CD, and organization-wide production use requires a commercial subscription โ€” contact krisprogrammer1@gmail.com. Converts to Apache-2.0 on 2030-07-25. You may not resell it or offer it as a competing hosted service.

-
license - not tested
-
quality - not tested
A
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pratikchandrathakur/IAM-Sentinel'

If you have feedback or need assistance with the MCP directory API, please join our Discord server