Sathsara K.
  • Home
  • About
  • Projects
  • Case Studies
  • Blog
  • Contact
Hire me
  • Home
  • About
  • Projects
  • Case Studies
  • Blog
  • Contact
Sathsara K.
© 2026 Sathsara. Built with intent.
Back to Blog
Are Roles the Same as Identities in IAM? A Clear Breakdown
Software EngineeringJuly 19, 20269 min read

Are Roles the Same as Identities in IAM? A Clear Breakdown

#IAM#DevOPS

A breakdown of identity, identifiers, and roles in Identity and Access Management, covering identity types, the identity lifecycle, and why a role is a permission bundle, not an identifier.

Table of Contents

  • • What Is an Identity?
  • • Identity Is Not Authentication, and Authentication Is Not Authorization
  • • Identity Is Not Just About People
  • • Identity vs Identifier
  • • The Identity Lifecycle
  • • A Simple Analogy: The Passport
  • • Are Roles Identities?
  • • So Why Do People Sometimes Call Roles Identities?
  • • Identity, Role, and Permission Together
  • • Why Roles Exist in the First Place
  • • Where the Confusion Usually Comes From
  • • A More Complete Picture
  • • Key Takeaways

Understanding Identity and Roles in IAM

A common point of confusion in Identity and Access Management (IAM) is the difference between identity, identifiers, and roles. It is easy to assume a role is just another word for identifier, something that "identifies" a user. That assumption turns out to be wrong, and untangling it reveals a lot about how real IAM systems are structured.

What Is an Identity?

An identity is a digital representation of a person, application, device, or service within a system. It is the full collection of information that uniquely describes an entity, essentially a digital profile.

Real WorldDigital Identity
YouYour Google account
EmployeeCorporate Active Directory account
CustomerWebsite user account
Mobile AppAPI Client ID
ServerMachine Identity (Certificate)

An identity is made up of attributes. An employee identity, for example, might look like this:

text
Identity
--------
Employee ID : EMP 10025
Username    : sathsara
Name        : Sadeesha Kumbukage
Email       : sathsara@company.com
Department  : Engineering
Role        : Software Engineer
Manager     : John
Status      : Active

These fields are called identity attributes, and together they answer the question every IAM system starts with: who is this?

Identity Is Not Authentication, and Authentication Is Not Authorization

These three terms get lumped together often (covered in more depth in the earlier post on IAM basics), so it helps to separate them with a simple example.

Identity: "I am Sadeesha." The system simply knows there is an employee called Sadeesha.

Authentication: "Prove you are Sadeesha." This is done with a password, fingerprint, face scan, security key, or OTP.

Authorization: "Now that the system knows you are Sadeesha, what are you allowed to do?" Reading HR documents might be allowed, deleting payroll might not, and approving leave might be allowed.

Rendering diagram…

Identity Is Not Just About People

IAM is not only concerned with human users. Several kinds of entities need an identity.

Rendering diagram…

Machine identities let servers trust each other. Application identities let apps authenticate through mechanisms like OAuth. Service identities let microservices, such as an order service and a payment service, recognize one another. Device identities let phones, laptops, and IoT devices prove what they are before being granted access.

Identity vs Identifier

An identifier is a single value that uniquely points to an identity, such as a username, an email, an employee ID, or a UUID. For example, Username = sathsara is an identifier.

An identity, on the other hand, is the complete representation: the identifier plus all of its attributes.

text
Username   : sathsara
Email      : sathsara@company.com
Role       : Admin
Department : IT
Status     : Active

So the rule of thumb is simple:

Identity equals Identifier plus Attributes.

The Identity Lifecycle

An identity is not static. It changes as a person's situation changes within an organization, and managing that change is a core responsibility of any IAM system.

Rendering diagram…

A Simple Analogy: The Passport

A passport is a useful way to make this concrete.

A passport contains a passport number, which is the identifier, along with a name, date of birth, nationality, and photo, which together form the identity. Showing the passport at immigration is authentication. The visa inside, which determines what the holder is allowed to do in that country, is authorization.

Are Roles Identities?

This is a common trap: assuming a role is an identifier for an identity. It is not. A role is an attribute or assignment associated with an identity, not something that identifies a person.

A role is best understood as a set of permissions that can be assigned to an identity.

text
Role: Software Engineer

Permissions:
    Read Repository
    Create Build
    Deploy Development

The role does not represent a person. It represents a bundle of permissions that gets attached to an identity.

Rendering diagram…

So Why Do People Sometimes Call Roles Identities?

Because in certain IAM systems, a role can act as a security principal. A principal is anything that can request access to a resource, and that includes users, services, applications, devices, and in some cases, roles themselves.

A role becomes a principal when something assumes that role. AWS IAM is a good example of this in practice. An EC2 instance should not carry permanent credentials, so instead it assumes an IAM role temporarily.

Rendering diagram…

Here the EC2 instance is the identity, and the IAM role behaves like a temporary identity with permissions rather than a permanent one.

The same idea applies to a developer assuming an administrative role for a session.

Rendering diagram…

During that session, the system effectively treats Alice as the role she has assumed.

Identity, Role, and Permission Together

A useful mental model here is a company badge. The identity is the employee, for example Sadeesha with employee ID 10025. The role is the job position, such as Software Engineer. The permission is the set of allowed actions, such as reading a Git repository, deploying an application, and viewing logs.

Rendering diagram…

Why Roles Exist in the First Place

Imagine a company with ten thousand employees. Without roles, every single person would need permissions assigned to them individually.

text
Sadeesha
    read_database
    deploy_code
    create_user

John
    read_database
    deploy_code
    create_user

Mary
    read_database
    deploy_code
    create_user

That quickly becomes impossible to manage. With roles, the permission set is defined once and assigned to everyone who needs it.

text
Software Engineer Role

Permissions:
    read_database
    deploy_code
text
Sadeesha to Software Engineer
John to Software Engineer
Mary to Software Engineer

If the permissions for that role change later, for example by adding access_logs, every person holding that role receives the update automatically. This pattern is generally known as Role Based Access Control, or RBAC.

Where the Confusion Usually Comes From

Part of the confusion is that roles often have their own identifiers too. In AWS IAM, a role might look like this:

text
Role:
    arn:aws:iam::123456789:role/AdminRole

And a user might look like this:

text
User:
    arn:aws:iam::123456789:user/Sadeesha

Both have identifiers, but one identifies a role and the other identifies a user. They are separate identities in the system, not the same concept wearing two names.

A More Complete Picture

In an enterprise IAM setup, roles are often assigned automatically based on identity attributes.

Rendering diagram…

For example, if the department attribute equals Finance, the system might automatically assign a Finance Analyst role. This attribute driven assignment is one of the things that makes large scale IAM systems manageable.

Key Takeaways

Identity answers who is this. Role answers what type of access should this identity have. Permission answers what actions can this identity actually perform.

ConceptMeaning
IdentitySomething that can be recognized
UserHuman identity
ServiceApplication or machine identity
DeviceHardware identity
RoleA permission bundle, and sometimes an assumable identity
PermissionAn allowed action
PrincipalAnything that can request access

The next concept worth digging into is the idea of a Principal, since in IAM the word principal is often used in places where identity might be expected, especially in AWS, OAuth, and access control policies.

All ArticlesSoftware Engineering
Sathsara

Sadeesha Sathsara

Backend & DevOps Developer

Writing on async systems design, automated CI/CD pipelines, containerization, and backend patterns.

More in Software Engineering

What Is Identity and Access Management (IAM)? A Beginner's ExplanationJuly 19, 2026 · 4 min readAuthentication vs Authorization: Security Best PracticesJuly 11, 2026 · 6 min read

Keep Reading

More Articles

What Is Identity and Access Management (IAM)? A Beginner's Explanation
ArticleSoftware Engineering
July 19, 2026

What Is Identity and Access Management (IAM)? A Beginner's Explanation

Read
Authentication vs Authorization: Security Best Practices
ArticleSoftware Engineering
July 11, 2026

Authentication vs Authorization: Security Best Practices

Read
KPIs Explained: The Dashboard Numbers That Actually Run a Business
ArticleBusiness
July 3, 2026

KPIs Explained: The Dashboard Numbers That Actually Run a Business

Read
Data Visualization Is Not Decoration, It Is Business Storytelling
ArticleBusiness
July 3, 2026

Data Visualization Is Not Decoration, It Is Business Storytelling

Read
How Money Really Flows Through a Business
ArticleBusiness
July 3, 2026

How Money Really Flows Through a Business

Read
What Is Data, Really? Understanding How Businesses Turn Real Life Into Records
ArticleBusiness
July 3, 2026

What Is Data, Really? Understanding How Businesses Turn Real Life Into Records

Read
Data Analysis Is Not About Tools, It Is About Reading a Business Through Its Data
ArticleBusiness
July 3, 2026

Data Analysis Is Not About Tools, It Is About Reading a Business Through Its Data

Read
Building Async CV Microservices with RabbitMQ & OpenCV
ArticleMicroservices
June 30, 2026

Building Async CV Microservices with RabbitMQ & OpenCV

Read
From Monolith to Event-Driven Microservices: An Architectural Blueprint
ArticleArchitecture
June 28, 2026

From Monolith to Event-Driven Microservices: An Architectural Blueprint

Read
Stop SSH-ing Into Production: Build Nginx & Docker CI/CD
ArticleDevOps
May 12, 2026

Stop SSH-ing Into Production: Build Nginx & Docker CI/CD

Read