AWS Solutions Architect: Associate Level
AWS Solutions Architect: Associate Level
Source: https://docs.aws.amazon.com/
IAM and Security on AWS
Learning Objectives
AWS Identity and Access Management or IAM is the service that enables you to securely control
user access to all the AWS services and resources.
AWS IAM
Why Identity and Access Management
01 03
02 04
Users Policies
An IAM user is an identity with login An IAM policy is a set of permissions that
credentials and permissions attached to it.
control access to AWS resources and
services. Policies are stored in JSON format.
Groups Roles
An IAM group is a collection of multiple IAM An IAM role is a set of permissions that define
users. They are used to grant permissions to the actions that are allowed or denied for an
multiple users simultaneously. AWS entity.
IAM Users
IAM Users
The IAM users are defined as the people or systems that use your AWS resources.
IAM users
Admin
people End Users Systems
Systems
AWS resources
Security Credentials
AWS provides numerous ways to provide secure user access to your AWS resources:
Access keys :
Access keys can be used to grant access to programmatic
requests.
Creating an IAM User
Duration: 10 min.
Problem Statement:
Steps to perform:
An IAM group is a collection of users that inherit the same set of permissions.
Granting Permissions to IAM Groups
The following diagram shows how the permissions are granted to different IAM groups:
Admin
Developer Admin
s s
Mike Marc
Jane Sara
Ann Jim
Duration: 10 min.
Problem Statement:
Steps to perform:
IAM Roles are permissions and policies that determine the access available to the AWS identities.
IAM Roles
03 These roles can be used by anyone who requires them.
Various Functions of IAM Roles
IAM Roles are used to provide access to users, applications, and services that do not have the
permission to use AWS resources.
AWS Account
3. Developer
2. Developer launches
launches an an
instance
instance with therole
with the Role.
EC2 Instance
2. Application Application
retrieves 4. Application gets
3. App retrieves 4. App gets photos
credentials of the photos using the
role credentials using the role
Role
fromfrom the
the instance credentials
credentials of the
instance. Role.
Instance Profile
Role: Get-
photos Amazon
S3 bucket
1. Admin
1. Admin creates
creates role a Role that
that
grants
grantsaccess
access totothe
the photos
photos
inbucket
the bucket.
Creating an IAM Role for an IAM User
Duration: 10 min.
Problem Statement:
Create an IAM role using the Amazon console for an IAM user
Assisted Practice: Guidelines to Create an IAM Role for an IAM User
Steps to perform:
An IAM policy is a document that defines one or more permissions. IAM policies can be attached
to users, groups, roles, and AWS resources. They are written in JSON format.
AWS has many predefined policies which allow you to define granular access to AWS resources.
There are around 200 predefined policies available for you to choose from.
AdministratorAccess Policy
Admin User
AmazonEC2FullAccess Policy
AmazonEC2FullAccess policy provides users or groups full access to the Amazon EC2 services and
resources.
Users
AmazonS3ReadOnlyAccess policy provides read-only access to all the buckets using AWS Management Console.
READ ONLY
Users
Types of IAM Policies
Types of IAM Policies
Policy-wide information:
{
“Version”: “2012–10–17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
“ec2:*”
],
“Resource”: “*”,
“Condition”: {
“StringEquals”: {
“aws:RequestedRegion”: “us-east-1”
}
}
}
]
}
Example of a Resource-based Policy
{
“Version”: “2012–10–17”,
“Statement”: [
{
“Effect”: “Allow”,
“Action”: [
“ec2:*”
],
“Resource”: “*”,
“Condition”: {
“IpAddress”: {
“aws:SourceIp”: [
“public_ipv4”
]
}
}
}
]
}
Assigning IAM Roles to Amazon Services
Creating an IAM Role for Amazon EC2 Service
Duration: 15 min.
Problem Statement:
Steps to perform:
06 Granular Permissions
08 Identity Federation
Multi Factor Authentication
AWS IAM supports Multi Factor Authentication (MFA) for users and resources to ensure absolute security by
using MFA devices.
User ID + Password
AWS IAM supports Payment Card Industry (PCI) which enables users to process, store, and
transmit credit card data from a merchant or a service provider.
Identity Information for Assurance
AWS IAM used with CloudTrail can be used to log, monitor, and track what users are
doing with your AWS resources.
Account A
Account B Account C
S3 Bucket
AWS IAM can be used to grant permissions to users for accessing and using resources in
your AWS account without sharing your password.
Admin User
Granular permissions allow granting permissions to various users. These permissions include user access to
specific services, specific permissions for action, specific access to resources, and more.
Volume
Development
Admin Access
Team
Instances Instances
+
Volume
Secure Access to AWS Services
AWS IAM lets you securely allocate credentials that are required by the applications hosted on EC2
instances in order to access other AWS resources.
S3 Bucket
IAM
Application on
EC2 Database
Storage
Identity Federation
AWS IAM allows users with external accounts to get temporary access to AWS resources.
AWS Directory Service
What Is an Active Directory?
Active Directory or AD is a Microsoft product that offers services compatible with Windows
servers. It is used by organizations to store their information such as number of users,
computers, printers, networks, and more.
What Is AWS Directory Service?
AWS Directory Service offers multiple ways for users to use Microsoft Active Directory with AWS
services and resources. It is built on actual Microsoft Active Directory and does not require the
synchronization or replication of data from your existing Active Directory to the cloud.
Source: aws.amazon.com
AWS Resource Access Manager
What Is AWS Resource Access Manager?
AWS Resource Access Manager or AWS RAM allows you to share your AWS resources securely
with any AWS account. Users can create AWS resources centrally in a multi-account
environment.
AWS Account 2
Source: aws.amazon.com
Benefits of AWS RAM
Provides security and consistency by allowing users to use existing policies and
permissions to govern the consumption of shared resources
The following are the three different ways to access AWS RAM:
AWS RAM service offers a The AWS CLI provides AWS offers commands for
web-based user interface direct access to the AWS developers who script in
that can be accessed from RAM API operations from the PowerShell
Amazon console. platforms such as environment. These
windows, linux, and commands are also
macOS. available for AWS RAM.
AWS Organizations
What Is AWS Organization?
AWS Organization is an account management service that allows users to consolidate multiple
AWS accounts into a group called an organization that they can create and manage centrally.
AWS Account 2
AWS Organization
What Is AWS Organization?
AWS Organization is used with AWS RAM to share resources across a group of AWS accounts. It
helps to centrally manage billing, control access, compliance, and security across the member
AWS accounts of the organization.
01 Accounts are grouped into logical groups called organizational units (OUs).
02 The parent container for all the accounts in all OUs is called the root.
03 The OU that contains the member AWS accounts is called the custom OU.
The OU that contains the log archive account and details such as what
04
resources are being shared among the accounts is called the core.
AWS Single Sign-On
What Is AWS Single Sign-On?
AWS Single Sign-On is a property of identification and access management that allows users to
authenticate their AWS accounts by signing in once and using a single set of credentials.
Source: aws.amazon.com
Enabling AWS Single Sign-On for a User
Duration: 15 min.
Problem Statement:
Enable AWS Single Sign-On for a user using AWS SSO console
Assisted Practice: Guidelines to Enable AWS Single Sign-On for a User
Steps to perform:
Multi Factor Authentication or MFA adds an extra layer of security to the signing-in process. It
requires users to authenticate from an AWS supported MFA mechanism in addition to their
sign-in credentials when they access AWS services.
• This is a type of MFA • This is a type of MFA where • This is a type of MFA
where an application U2F security key is enabled where the IAM user
running on a phone or after a device is plugged settings include a phone
other devices generates a into a USB port on the number of user's SMS
six-digit numeric code. user's computer. compatible mobile.
• The user is required to • The users sign in by • When the users sign in,
type the code from the entering their credentials they are required to type
device on the webpage and then tapping the device the six-digit code sent by
while signing-in. instead of manually AWS to the provided
entering a code. mobile number.
Enabling Multi Factor Authentication
Duration: 15 min.
Problem Statement:
Steps to perform:
AWS IAM is the service that enables you to securely control user access
to all the AWS services and resources.
You have been asked to utilize AWS IAM options to secure the access to AWS
services for the users in your organization.