Beyond basic IAM, understanding roles (assumed identities), policy types and evaluation (how permissions are determined), and patterns like cross-account access and service roles is important for secure, well-architected AWS access management.
Roles in depth — who assumes what
A ROLE has TWO key policies:
TRUST POLICY → WHO can assume the role (which principals: a service, account, user)
PERMISSION POLICIES → WHAT the role can do once assumed
Use cases:
→ SERVICE roles — an EC2/Lambda assumes a role to access AWS (no embedded keys)
→ CROSS-ACCOUNT — account B's role trusts account A → A's users assume it (controlled access)
→ FEDERATION/SSO — external identities assume roles (temporary credentials)
→ Roles give TEMPORARY credentials (auto-rotated) — far safer than long-lived keys.
