Skip to main content

Command Palette

Search for a command to run...

AWS IAM Best Practices

Published
2 min read
AWS IAM Best Practices
J

Hello! I'm Jay Tillu, an Information Security Engineer at Simple2Call. I have expertise in security frameworks and compliance, including NIST, ISO 27001, and ISO 27701. My specialities include Vulnerability Management, Threat Analysis, and Incident Response. I have also earned certifications in Google Cybersecurity and Microsoft Azure. I’m always eager to connect and discuss cybersecurity—let's get in touch!

Managing Identity and Access Management (IAM) properly is one of the most important steps in keeping your AWS environment secure. Here’s a simple guide with best practices anyone can follow.


👤 1. Don’t Use the Root Account

  • Only use it for account setup or billing.

  • Create an admin IAM user for everyday tasks.

  • Enable MFA (Multi-Factor Authentication) on the root account immediately.


🔐 2. Enable MFA for All Users

  • Add an extra layer of security.

  • Use virtual MFA apps like Google Authenticator or Authy.


🧑‍🤝‍🧑 3. Use IAM Groups

  • Don’t assign permissions to users directly.

  • Group users by role (e.g., Devs, Admins) and manage permissions for the whole group.


⚙️ 4. Grant Least Privilege

  • Only give access to what a user or service needs—nothing more.

  • Start with minimal permissions and add as needed.


🔁 5. Rotate Access Keys Regularly

  • Don’t let access keys stay active forever.

  • Rotate them every 90 days.

  • Disable or delete unused keys.


👀 6. Monitor with IAM Tools

  • Use the IAM Credential Report to check:

    • Users without MFA

    • Old access keys

    • Password age and usage

  • Use IAM Access Advisor to see:

    • Which AWS services each user has accessed

    • Remove permissions for unused services


🔒 7. Avoid Long-Term Access Keys

  • For applications, use IAM roles with temporary credentials.

  • Never hardcode credentials into your code.


📜 8. Use Managed Policies

  • Start with AWS-managed policies.

  • Create custom policies only when needed.

  • Avoid inline policies—they’re hard to track and manage.


🔍 9. Review IAM Regularly

  • Audit users, permissions, and credentials often.

  • Use CloudTrail to monitor IAM activity.


🛠️ 10. Use IAM Policy Simulator

  • Test your policies before applying them.

  • It helps you avoid mistakes and unintended access.


Bonus Tips

  • Use tags to organize IAM users and roles.

  • Set up alerts for changes in IAM (with CloudWatch).

  • Use IAM Access Analyzer to find risky public access.

More AWS SAA Articles

Follow me for more such content

AWS Solutions Architect Associate Exam

Part 1 of 50

In this series, I will write blogs related to the AWS Solutions Architect Associate Exam. It is a short notes series for the exam.