aws-iam ยท diff

git:20260210.2b17bc4 to git:20260224.b517efb

1 added, 0 removed. Audit A to A.

---
name: aws-iam
description: AWS IAM deep-dive skill - principal types, policy evaluation, STS assume role, SCP guardrails, KMS key policies/grants, and AccessDenied debugging. Use when designing AWS authz/authn, cross-account access, or troubleshooting IAM/KMS/SCP AccessDenied errors.
---
# AWS IAM
## When to use
Use this skill when you are working on:
- IAM principals (users, roles, assumed-role sessions, service principals)
- Trust policies (`sts:AssumeRole*`) and cross-account access
- Identity-based vs resource-based policies
- Permission boundaries, session policies, and Organizations SCPs
- KMS key policies, grants, and `kms:Decrypt` / `kms:GenerateDataKey` failures
- Debugging `AccessDenied` in AWS (including cross-account and KMS)
## What to do (workflow)
1. Identify the **runtime principal** (often an STS assumed-role ARN)
2. Identify the **action** + **resource ARN(s)** from the error or design requirement
3. Determine which **policy layers** are in play:
- identity-based policy
- resource-based policy
- permission boundary
- session policy
- SCP (Organizations)
4. Look for **explicit deny** first (it wins)
5. For cross-account flows:
- validate the trust policy (who can assume)
- validate the permission policy (what the role can do)
- validate any resource policy (who can access the target resource)
6. For KMS:
- validate key policy + IAM policy + any grant constraints
## References
- `references/iam-authorization-model.md`
- `references/cross-account-and-externalid.md`
+ - `references/cross-service-confused-deputy.md`
- `references/kms-key-policy-and-grants.md`
- `references/eks-pod-identity-abac-and-lattice.md`