IAM Roles
Start course
3h 35m

This course looks at the key Security services within AWS relevant to the Solution Architect associate exam. Core to security is Identity & Access Management, commonly referred to as IAM. This service manages identities and their permissions that are able to access your AWS resources and so understanding how this service works and what you can do with it will help you to maintain a secure AWS environment. IAM is an important service in ensuring your resources are secure.

Want more? Try a lab playground or do a Lab Challenge

Learning Objectives

  • Learn about identity and access management on AWS including users, groups & roles, IAM policies, MFA, identity federation, and cross-account access
  • Learn the fundamentals of AWS Web Application Firewall (WAF) including what it is, when to use it, how it works, and why use it
  • Understand how to configure and monitor AWS WAF
  • Learn about AWS Firewall Manager and its components
  • Learn how to configure AWS Shield
  • Learn the fundamentals of AWS Cognito

IAM Roles allow trusted Users, AWS services and applications to adopt a set of temporary IAM credentials to access your AWS resources. Roles act as identities, much like Users do, and have permissions assigned to them defining what resources the Roles can and can't access. Unlike Users though, which represent a single identity, IAM Roles are designed to be assumed by multiple different entities as and when required. Like I say, Roles are used for temporary access to gain access to resources, and each time the role is assumed by a User, an AWS service or an application, a new set of credentials is dynamically created for the duration of that session. As a result, Roles do not have any long term credentials associated, so there is no password for console access, nor are there any access keys for programmatic access that are explicitly associated with the Role.

For every role there will be associated policies controlling access as to what can and can't be accessed when the role is assumed. There will also be a Trust Relationship, and this Trust Relationship defined who or what can assume the role, for example a User, an AWS account, or an AWS Service. IAM Roles are generally used: if you need to grant temporary access for Users to AWS resources that they don't normally require access to or you can use a Role to grant access for an IAM user in one account to access resources in another AWS account or perhaps an AWS service needs to access resources on your behalf or if an application requires access to resources you can use a Role instead of embedding credentials into the software itself. Or you might have federated users who require access to specific resources, perhaps those authenticated via Active Directory So, as a result, Roles can be assumed by the following: A user that's in the same AWS account as the where the role has been created, a user that's in a different AWS account than where the the role has been created, an AWS service, such as EC2, or an external federated users to your AWS account

About the Author
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.