AWS Certified Cloud Practitioner / Identity and Access Management

IAM Users & Groups Hands on

πŸ” Working with IAM Users in AWS

In this lecture, we will practice using AWS Identity and Access Management (IAM) to create users inside your AWS account.

IAM is one of the most important services in AWS β€” and understanding it early will help you build secure architectures from day one.


πŸ”Ž Accessing the IAM Console

  1. Go to the AWS Management Console (AWS Dashboard which shown after login)

  2. In the search bar, type IAM


🌍 IAM is a Global Service

Once you're inside the IAM Dashboard, notice something very important.

If you look at the top-right corner, you’ll see that the region selector is disabled.

That means:

  • There is no region selection

  • Users you create are available across all AWS regions

  • Permissions apply account-wide

⚠️ This is different from services like EC2 or S3, which are region-specific.


πŸ‘€ Why Do We Create IAM Users?

Right now, you are logged in as the root user (account owner).

βœ… You can confirm this because:

  • You see your Account ID ( IAM user does not have their own Account ID)

  • You logged in using the root credentials

πŸ‘‰ Best Practice:

  • Never use the root account for daily activities.

  • Create IAM users. Grant them appropriate permissions

  • Use them for regular access. This significantly improves your account security.


πŸ›  Creating an IAM User

1. In the left sidebar, click Users or IAM users

2. Click Create user

3. Specify User Details

  • Enter a User name (example: codeveda)

  • Enable Provide user access to the AWS Management Console

Click Next

Beginners often mix these up:

βœ… Authentication β€” Can the user log in?
❌ Authorization β€” What can the user do once logged in?

Turning on console access only lets a user log in. It doesn't give them any permissions.

πŸ‘‰ To grant access to specific things, you need to attach IAM policies.

Without any policies attached, the user will hit "Access Denied" on almost everything.

4. Setting the Password

🎲 Auto-generated password

✍️ Custom password

🎲 Keep auto-generated enabled

πŸ”„ Turn on "Require password reset at next sign-in"

✍️ Choose a custom password

β˜‘οΈ You can uncheck "Require password reset"

Click Next

5. Set Permissions

Now assign permissions. You have three options:

  • Attach policies directly β€” Permissions apply only to this user. Simple, but hard to manage at scale.

  • Add user to a group β€” Permissions come from the group. Easiest to manage as your team grows.

  • Copy permissions from another user β€” Duplicates an existing user's permissions onto this one. Quick, but you inherit their exact setup, including anything outdated.

πŸ‘‰ Best practice: Use groups

.πŸ‘₯ Creating an Admin Group

  1. Click Create group

  2. Group name: Admin

  3. Attach policy: AdministratorAccess (This policy grants full access to AWS)

  4. Add the user to the Admin group

  5. Click Next

6. Review and Create

‼️ Review your configuration carefully

πŸ‘€ User name β†’ codeveda

πŸ”‘ Console password β†’ Custom

πŸ”„ Require password reset β†’ No

πŸ‘₯ Group β†’ Admin

πŸ“‹ Policy β†’ AdministratorAccess

🏷️ Key β†’ department

🏷️ Value β†’ technology

πŸ‘‰ Tags are key-value metadata pairs that help you organize and identify AWS resources.

Click Create user

7. Retrieve the Password

This is the only time you can download or view the password (if auto-generated).

Options:

  • Download CSV

  • Email sign-in instructions

⚠️ If you lose this password, you must reset it manually.


πŸ‘₯ Understanding Permission Inheritance

If you open User Groups, you'll see a group called Admins β€” and inside it, one user: codeveda.

Check the group's permissions, and you'll find AdministratorAccess attached there.

Now check the user codeveda directly β€” it also shows AdministratorAccess. But it's not attached to the user. It's inherited from the group.

In short:

  • πŸ‘₯ Any permission attached to a group

  • ⚑ Automatically applies to every user inside that group


πŸ”— Signing in as the IAM User

Now let’s log in using the new IAM user. But before that, Go to πŸ‘‰

Your IAM Dashboard

  • Creating an Account Alias

  • You can customize the sign-in URL by creating an account alias.

It must be unique globally.

πŸ’‘ This URL can be used by all IAM users for quick and easy login, so they don’t need to remember the account ID or account alias.

πŸ–₯ Using Two Browser Windows

Recommended approach:

  • Left window β†’ Root user (normal browser)

  • Right window β†’ IAM user (private/incognito mode)

πŸ‘‰ This allows you to:

  • Compare permissions

  • Use two identities simultaneously

If you log into both in the same browser session, one session will replace the other.

Check the top-right corner:

  • You should now see IAM user β†’ codeveda

  • Account ID displayed

  • No longer logged in as root

⚠️ Critical Security Note

πŸ‘‰ Do NOT lose:

  • Root account credentials

  • Admin IAM credentials

If you lose both, account recovery becomes very complex and requires contacting AWS Support.


πŸŽ“ Course Recommendation

For this course:

  • βœ… Use your IAM user for daily work

  • ❌ Avoid using root unless explicitly required

Sometimes I may demonstrate actions using root, but I will clearly mention when that is necessary.

For now:

  • Keep both windows open

  • Make sure you understand the difference between root and IAM user access