# IAM - Manage Users, Roles and Permissions

With IAM service you can specify who can access which services and resources&#x20;

&#x20;   ▪ Create and manage AWS Users and Groups&#x20;

&#x20;   ▪ Assign policies (set of permissions)

![](https://2601183865-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8QpIzz6VwCOTMwaqKYa3%2Fuploads%2F7P83zzjgxCqYHaGf3RHh%2Fimage.png?alt=media\&token=860a4efc-e51d-491e-849f-07317fe9a554)

### Different Types of IAM Users

&#x20;   ▪ Human Users&#x20;

&#x20;   ▪ System Users: <mark style="color:red;">For example</mark> Jenkins needs permission to deploy Docker containers on AWS

### Groups

&#x20;   ▪ For granting access to multiple IAM users

### IAM roles&#x20;

&#x20;   ▪ IAM role is similar to an IAM user&#x20;

&#x20;   ▪ Instead of being uniquely associated with one person, a role is intended to be assumable by anyone who needs it&#x20;

&#x20;   ▪ Also Policies cannot be assigned to AWS services directly&#x20;

&#x20;   ▪ So role is used to grant AWS services access to other AWS services

{% hint style="info" %} <mark style="color:red;">**How to attach policies to IAM Role?**</mark>

1. Create IAM Role
2. Assign Role to AWS Service&#x20;
3. Attach Policies to that IAM Role
   {% endhint %}

![](https://2601183865-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8QpIzz6VwCOTMwaqKYa3%2Fuploads%2FUt3ZqxI4aE55rIoFTsEZ%2Fimage.png?alt=media\&token=4a95b372-0ddb-4f6a-ac6f-17421b7918d3) ![](https://2601183865-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8QpIzz6VwCOTMwaqKYa3%2Fuploads%2F0xkhafYZvjcvjRpanM1D%2Fimage.png?alt=media\&token=c501e2e2-cc32-4f0e-b68f-a29fb42be7aa)

![](https://2601183865-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F8QpIzz6VwCOTMwaqKYa3%2Fuploads%2FV9IuthTBXH3dBqlVZfjp%2Fimage.png?alt=media\&token=67e3415f-5a47-48b1-ad05-a21caaec8ae3)
