Skip to content
atlas

Cloud IAM

Also known as: cloud identity and access management

The cloud provider's built-in system of policies that decides which users, roles and service accounts may do what to each resource.

Draft - this entry has not been reviewed yet.

Formal

A service run by the cloud provider in which the customer writes policies binding an identity to the actions it may take on named resources; the provider checks them on every request and refuses anything not granted.

In plain English

Like the key card system in an office building - one central list says whose card opens which doors, and every door checks that list each time.

In practice

At a pension fund, the cloud architect gives the nightly backup job a service account that may only write to one storage bucket, and gives developers a role that can read logs but not delete databases.

Why it matters

The rights are the customer's job, not the provider's, and one policy that grants too much can open every resource in an account to whoever gets hold of it.

Technical deep dive

Every cloud IAM system evaluates the same four elements per API request: a principal (human user, group, federated identity or workload identity such as an AWS IAM role, a Google Cloud service account or an Azure managed identity), an action (a service-namespaced operation like s3:GetObject), a resource (an ARN in AWS, a full resource name in Google Cloud, a scope path in Azure) and optional conditions (source network, MFA present, tags, time). Authentication of the caller comes first, via a signed request or an OAuth 2.0 access token; authorisation then runs on every call, and the default outcome is an implicit deny.

The combination logic differs by provider. In AWS an explicit Deny in any applicable policy always wins; otherwise the request needs an Allow from an identity-based or resource-based policy, and it must also fall within every ceiling that applies: Organizations service control policies, permissions boundaries and session policies grant nothing themselves but cap what can be granted. Cross-account access needs an Allow on both sides. Google Cloud binds roles (bundles of permissions) to principals in allow policies at organisation, folder, project or resource level, inherited downwards as a union, with separate deny policies and IAM Conditions to restrict. Azure RBAC uses role assignments made of principal, role definition and scope (management group, subscription, resource group, resource), also inherited downwards; Microsoft Entra ID directory roles are a separate system, a frequent source of confusion.

Typical privilege-escalation paths come from permissions that look harmless: iam:PassRole lets a user attach a powerful role to compute they control, iam:CreatePolicyVersion lets them rewrite their own policy, and write access to a function's code inherits the function's role. Trust policies are another weak point, for example an OIDC federation for CI pipelines that omits a condition on the token's sub claim and therefore trusts every repository on the platform, or a third-party role without sts:ExternalId, which opens the confused-deputy problem. Credentials stolen from the instance metadata service via SSRF are a classic route to abusing an over-permissive role.

In practice, least privilege is approached iteratively: start from provider-managed roles, then narrow using policies generated from access logs (AWS IAM Access Analyzer, Google Cloud's role recommendations), replace long-lived access keys with short-lived credentials from STS or workload identity federation, and review with CIEM tools that compute effective permissions across all layers. The CIS Foundations Benchmarks for each provider contain concrete IAM checks such as MFA on the root account and no root access keys. Cloud IAM should be distinguished from the workforce identity provider (Entra ID, Okta and similar): the IdP authenticates people, usually federated in via SAML 2.0 or OpenID Connect, while cloud IAM authorises calls against the provider's API.

What to learn first

Everything this builds on, foundations first.

  1. Digital identity
  2. →Network
  3. →Credential
  4. →IP address
  5. →Protocol
  6. →Authentication
  7. →Packet
  8. →Port
  9. →Access control
  10. →Authorization
  11. →Router
  12. →Server
  13. →TCP/IP
  14. →Internet
  15. →Cloud computing
  16. →Cloud IAM

Relationships

Sources & further reading

Where this data comes from

This entry was drafted by an AI from the sources above and has not yet been checked by a person. Treat it as a starting point, and check anything important against the sources.

See the review queueSuggest a correction on GitHubThis term as JSON

Check yourself

Loading…

Atlas is in beta.