IAM Role
An IAM role is an identity that you create within a cloud provider's identity system and attach a set of permissions to, defining what actions may be performed on which resources. Rather than belonging permanently to one person, a role is typically something a user, application, or service assumes to gain the permissions it needs. In this way, a role acts as a container of permissions that can be granted to whoever or whatever is allowed to use it.
In cloud IAM platforms such as AWS and Google Cloud, an IAM role is an identity construct associated with a defined set of permissions that determine authorized actions against resources. In AWS, a role is an IAM identity that can be authenticated and authorized to use resources; unlike an IAM user, it is generally not tied to a single principal but is assumed by trusted entities, with the permissions themselves defined separately in policies rather than in the role's identity. In Google Cloud, a role contains a set of permissions that are made available to principals through binding, allowing specific actions on Google Cloud resources. Exact semantics, assumption mechanisms, trust relationships, and role types vary by provider and configuration; details beyond the AWS and Google Cloud usage described here are out of scope for this entry.
Why it matters
IAM roles are central to how permissions are granted in modern cloud environments because they decouple a set of permissions from any single permanent identity. Instead of embedding long-lived credentials in a specific user account or application, an entity assumes a role to obtain the permissions it needs for a task. This model, used in platforms such as AWS and Google Cloud, supports least-privilege design by letting architects define what actions may be performed on which resources and then granting that permission set to whichever principal is trusted to use it.
The distinction between the role (the identity and its associated permissions) and the policies that define those permissions matters for both security and governance. In AWS, permissions are defined separately in policies rather than in the role's identity, which means the same role can be reasoned about, audited, and adjusted independently of how it is assumed. In Google Cloud, a role contains a set of permissions that are made available to principals through binding. Misconfigured trust relationships, overly broad permissions, or roles that can be assumed by unintended principals are common sources of excessive access, so precise role scoping is a recurring concern in cloud security reviews.
Because exact semantics, assumption mechanisms, and role types vary by provider and configuration, teams that operate across multiple clouds must be careful not to assume that a role behaves identically everywhere. Treating an IAM role as a portable, uniform concept can obscure important differences in how trust is established and how permissions are bound, which in turn affects how access is audited and enforced.
Who it's relevant to
Inside IAM Role
Common questions
Answers to the questions practitioners most commonly ask about IAM Role.
