🌐
Amazon Web Services
docs.aws.amazon.com › aws identity and access management › user guide › iam identities › iam roles
IAM roles - AWS Identity and Access Management
An IAM role is similar to an IAM user, in that it is an AWS identity with permission policies that determine what the identity can and cannot do in AWS. However, instead of being uniquely associated with one person, a role is intended to be assumable by anyone who needs it.
🌐
Amazon Web Services
aws.amazon.com › products › security, identity and compliance › aws identity and access management › iam features
IAM - Manage Roles
3 days ago - AWS Identity and Access Management (IAM) roles are entities you create and assign specific permissions to that allow trusted identities such as workforce identities and applications to perform actions in AWS. When your trusted identities assume IAM roles, they are granted only the permissions ...
Discussions

IAM Roles and Groups.
Very wrong. An IAM group is not a principal. https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html#intro-structure-principal More on reddit.com
🌐 r/aws
38
21
March 30, 2024
amazon web services - Difference between IAM role and IAM user in AWS - Stack Overflow
What is the difference between an IAM role and an IAM user? The IAM FAQ has an entry explaining it, but it was vague and not very clear: An IAM user has permanent long-term credentials and is used to directly interact with AWS services. An IAM role does not have any credentials and cannot make ... More on stackoverflow.com
🌐 stackoverflow.com
Explain to me like I'm 5 what IAM role is and what it does
ELI5? Ok... A role is a special uniform that lets you do things. If you put on the doctor uniform then you get to be a doctor. If you put on the fireman's uniform you get to be a fireman. Your mummy and daddy can also makes rules about who is allowed to wear certain uniforms and grouping those people together, so maybe only girls are allowed to be doctors or only the people in your school can be bus drivers. Also, as well as wearing the uniform yourself mummy and daddy can draw the uniform onto a car so that anyone driving that car can act like they are wearing it. So anyone in the doctor-car can be a doctor. Or if your parents are really smart and can make a self-driving car but draw a doctor's uniform on it, then it can do surgery on its own without anyone in it so long as they teach the car all of the steps needed to do the surgery. More on reddit.com
🌐 r/aws
11
6
October 23, 2016
How renaming IAM Roles in Terraform can break API Gateway Policies
Saved you a click on a vendor sell (with a valid use case): * Recreating (Renaming IAM roles) will break resource-based policies (such as API Gateway policies, S3 bucket policies, KMS key policies, etc) since ARNs and not the unique ID are used. IAM users and roles (and other IAM resources) all have unique identifiers (UID). So when role_A is deleted and recreated - it will have a different UID and that's what breaks the API gateway policy. Agreed with u/Zenin on paying for products. What I recommend is to use dependencies and understand order of recreation when using IaC principles. If an IAM resource is deleted, recreate it first, then recreate the rest of the infrastructure (or update the dependent resources) AWS documentation: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns More on reddit.com
🌐 r/aws
7
13
February 6, 2025
🌐
Amazon Web Services
docs.aws.amazon.com › amazon ec2 › user guide › security in amazon ec2 › identity and access management for amazon ec2 › iam roles for amazon ec2
IAM roles for Amazon EC2 - Amazon Elastic Compute Cloud
Create an IAM role. Define which accounts or AWS services can assume the role. Define which API actions and resources the application can use after assuming the role. Specify the role when you launch your instance, or attach the role to an existing instance.
🌐
Medium
medium.com › @AlexanderObregon › understanding-aws-iam-roles-and-how-to-use-them-for-beginners-3047e34f22b8
Understanding AWS IAM Roles and How to Use Them for Beginners
December 1, 2025 - These roles let you grant short-lived access to AWS resources without handing out long-term keys. A role can be taken on by a person, a service, or an application that needs to reach into a part ...
🌐
AWS Fundamentals
awsfundamentals.com › blog › aws-iam-roles-terms-concepts-and-examples
An AWS IAM Roles Deep Dive: Terms, Concepts, and Examples
IAM roles allow you to define a set of permissions for making AWS service requests without having to provide permanent credentials like passwords or access keys. Instead, IAM roles can be assumed by IAM users, AWS services, or applications that ...
🌐
Amazon Web Services
docs.aws.amazon.com › aws identity and access management › user guide › iam identities › iam roles › iam role creation
IAM role creation - AWS Identity and Access Management
To create a role, you can use the AWS Management Console, the AWS CLI, the Tools for Windows PowerShell, or the IAM API. If you use the AWS Management Console, a wizard guides you through the steps for creating a role. The wizard has slightly different steps depending on whether you're creating a role for an AWS service, for an AWS account, or for a SAML or OIDC federated principal. Create this role to delegate permissions within your AWS account or to roles defined in other AWS accounts that you own.
🌐
GeeksforGeeks
geeksforgeeks.org › devops › iam-roles
IAM Roles - GeeksforGeeks
August 2, 2025 - AWS IAM Roles allow users, applications and services to securely access resources without requiring permanent credentials. Unlike IAM users, which are assigned to specific individuals, roles can be temporarily used by AWS services like EC2 and ...
🌐
Spacelift
spacelift.io › blog › aws-iam-roles
AWS IAM Roles - Everything You Need to Know & Examples
September 15, 2025 - IAM roles are entities that provide access to different AWS services based on the level of permissions they have, which makes them similar to AWS users. Roles do not have passwords or access keys associated with them.
Find elsewhere
🌐
AWS
docs.aws.amazon.com › iam roles anywhere › user guide › what is aws identity and access management roles anywhere?
What is AWS Identity and Access Management Roles Anywhere? - IAM Roles Anywhere
You can use AWS Identity and Access Management Roles Anywhere to obtain temporary security credentials in IAM for workloads such as servers, containers, and applications that run outside of AWS. Your workloads can use the same IAM policies and IAM roles that you use with AWS applications to access AWS resources.
🌐
Amazon Web Services
aws.amazon.com › security, identity, and compliance › aws identity and access management (iam) › aws iam roles anywhere
Extend IAM roles to workloads in multicloud with AWS IAM Roles Anywhere
3 days ago - You can use AWS Identity and Access Management (IAM) Roles Anywhere to obtain temporary security credentials for your on-premises, hybrid, and multicloud workloads. IAM Roles Anywhere integrates with your existing enterprise PKI so that your non-AWS workloads can use the same IAM policies and ...
🌐
StrongDM
strongdm.com › blog › identity and access management
AWS IAM Roles vs Policies: What's the Difference? | StrongDM
October 24, 2025 - The difference between IAM roles and policies in AWS is that a role is a type of IAM identity that can be authenticated and authorized to utilize an AWS resource, whereas a policy defines the permissions of the IAM identity.
🌐
AWS
aws.amazon.com › blogs › security › extend-aws-iam-roles-to-workloads-outside-of-aws-with-iam-roles-anywhere
Extend AWS IAM roles to workloads outside of AWS with IAM Roles Anywhere | Amazon Web Services
January 14, 2026 - This is secure and convenient, because you don’t have to distribute and manage AWS credentials for applications running on AWS. Instead, the IAM role supplies temporary credentials that applications can use when they make AWS API calls.
Top answer
1 of 9
122

To understand the difference, let us go through IAM basic knowledge

IAM controls: Who (authentication) can do What (authorization) in your AWS account. Authentication(who) with IAM is done with users/groups and roles whereas authorization(what) is done by policies.

Here the term

  • User - End user think about people

  • Groups- a set of users under one set of permission(policies)

  • Roles - are used to grant specific permission to specific actors for a set of duration of time. These actors can be authenticated by AWS or some trusted external system.

User and roles use policies for authorization. Keep in mind that user and role can't do anything until you allow certain actions with a policy.

Answer the following questions and you will differentiate between a user and a role:

  • Can have a password? Yes-> user, No-> role
  • Can have an access key? Yes-> user, No-> role
  • Can belong to a group? Yes-> user, No -> role
  • Can be associated with AWS resources (for example EC2 instances)? No-> user, Yes->role

AWS supports 3 Role Types for different scenarios

  • AWS service roles (for example: EC2, Lambda, Redshift,...)
  • Cross-Account Access: granting permissions to users from other AWS account, whether you control those account or not.
  • Identity Provider Access: granting permissions to users authenticated by a trusted external system. AWS supports two kinds of identity federation: - Web-based identity such as Facebook, Goolge- IAM support ingeration via OpenID Connect - SAML 2.0 identity such as Active Directory, LDAP.

To understand what role is, you need to read its use case, I don't want to reinvent the wheel so please read the following AWS documents: https://aws.amazon.com/blogs/security/how-to-use-a-single-iam-user-to-easily-access-all-your-accounts-by-using-the-aws-cli/

https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html

Hope it helps.

2 of 9
68

Main actors in IAM are users, groups, roles and policies. And what you need to understand about AWS and never forget is that

Everything in AWS is an API

And to execute any API or any of its methods, first we have to authenticate and then authorize that particular user/group/role.

Ex: An operator wants to put an object to a S3 bucket. This process happens through a set of API calls within AWS. Basically we call the S3 API and a method of it to put the object into the particular bucket (say method put_object_in_s3). For that we may want to provide the name of the bucket, the object, and most importantly we need to provide set of credentials (username with password or secret key or etc) in order to tell the AWS API Engine who this user/group/role is.

The first thing API Engine does is, look at those credentials sent with the API. Then it validate those (whether they are correct, active) credentials indicating that this request is coming from a actual valid user, group or role. Then what the API Engine does is (as it now knows who sent this API request) it takes the policy documents associated with the particular operator (user or role) and evaluate them as a single view. That is we check whether the action called in the API is authorized for that operator.

IAM user - In the context of IAM, a user is a “permanent” named operator (human or machine). What’s important to note is that it’s credentials (credentials maybe username password or access key or a secret key) are permanent and stays with that named user. So by that AWS knows that what are the authentication methods (username password authentication method or secret key method or etc) for this user (as its permanent and stays with the user).

IAM group - As in the above image, a group is a collection of users. And note that a user can be in many groups as well.

IAM roles - Roles are not Permissions !!!. A role is also an authentication method just as IAM users and groups. As a user, a role is also a operator (could be a human, could be a machine). Difference is that credentials with roles are temporary.

Policy Documents - As stated earlier, roles are not Permissions. Permissions in AWS are completely handled by objects called Policy Documents. Policy Documents are JSON documents. Policy Documents can directly be attached to Users, Groups or Roles. When a policy document gets attached to any of above operator, then only they get permissions do stuff. A policy document lists things like: Specific API or wildcard group of APIs that gets whitelisted against which resources, and Conditions for those API executions (like allow only if this user, group or role in the home network or allow from any location, allow only at certain times of day and etc)

Last but not least, Authentication in AWS is done via (IAM users, groups and roles) whereas Authorization is done by Policies.

🌐
Amazon Web Services
docs.aws.amazon.com › aws identity and access management › user guide › iam identities
IAM Identities - AWS Identity and Access Management
March 5, 2026 - IAM entities include IAM users and IAM roles. For definitions for commonly used terms, see Terms. You can federate existing identities from an external identity provider. These identities will assume IAM roles to access AWS resources.
🌐
AWS
docs.aws.amazon.com › aws iot core › developer guide › security in aws iot › authentication › client authentication › iam users, groups, and roles
IAM users, groups, and roles - AWS IoT Core
You can use them to connect to AWS IoT HTTP interfaces using the AWS SDK and AWS CLI. IAM roles also allow AWS IoT to access other AWS resources in your account on your behalf. For example, if you want to have a device publish its state to a DynamoDB table, IAM roles allow AWS IoT to interact ...
🌐
Qloudx
qloudx.com › aws-iam-roles-types-use-cases
AWS IAM Roles: Types & Use Cases – QloudX
An IAM user in AWS represents a real-world entity that needs access to AWS resources, like a person or an application. The user can be assigned permissions that determine which parts of AWS he/she/it can access. An IAM role is similar in the sense that it too is associated with certain permissions ...
🌐
Amazon Web Services
docs.aws.amazon.com › aws identity and access management › user guide › iam identities › iam roles › common scenarios for iam roles
Common scenarios for IAM roles - AWS Identity and Access Management
This guide uses the phrases switch to a role and assume a role interchangeably. The simplest way to use roles is to grant your IAM users permissions to switch to roles that you create within your own or another AWS account. They can switch roles easily using the IAM console to use permissions ...
🌐
AWS
docs.aws.amazon.com › aws backup › developer guide › security in aws backup › identity and access management in aws backup › iam service roles
IAM service roles - AWS Backup
Using AWS roles to control access ... and Access Management (IAM) role is similar to a user, in that it is an AWS identity with permissions policies that determine what the identity can and cannot do in AWS....