SlideShare une entreprise Scribd logo
1  sur  23
Pop-up Loft
IAM Introduction
Apurv Awasthi, Senior Product Manager
AWS Identity and Access Management (IAM)
What	to	Expect	from	the	Session
We will look at:
• What is IAM?
• IAM Concepts – to help you get started
• Common use cases – cover the building blocks
• Demos – “Show and Tell”
AWS Identity and Access Management (IAM)
• Enables you to control who can do what in your AWS account
• IAM uses access control concepts that you are already familiar with
User Group Permissions
(IAM Policies)
Role
AWS Services
and
Resources
AWS Identity and Access Management (IAM)
• Control
– Centralized
– Fine-grained - APIs, resources, and AWS Management Console
• Security
– Secure (deny) by default
– Multiple users, individual security credentials and permissions
IAM Users
What
• Entity that represents the person or service that uses it to interact with AWS
• Consists of a name and unique set of credentials
• Console password
• Access Key
• MFA device (SMS, Virtual, or Hardware)
• Each IAM user is associated with one and only one AWS account; does not
require a separate payment method.
When
• Enable human or programmatic access to AWS resources and services
• E.g. New employee, Rob, requires access to Amazon EC2 and Amazon S3
services
• E.g. Rob has created an application that stores data in Amazon DynamoDB
IAM Users
Why (Benefits)
• Unique set of credentials
• Individual permissions
• Granular control
• Easy to revoke access
Do
• Create IAM user for yourself
• Create individual IAM users for
others
Don’t
• Distribute your AWS root
credentials
• Use your root account user
• Share your IAM user credentials
IAM Users and Permissions
• No permissions by default
• Permissions specify who has access to AWS resources, and what actions
they can perform on those resources
• Assign permissions individually to each user (or use Groups)
• Rob (UX Designer) > access to Amazon S3
• Samantha (Database Administrator) > access to select Amazon EC2, Amazon
RDS, Amazon DynamoDB, AWS Lambda, and AWS Data Pipeline APIs
• Use IAM Policies to assign permissions
IAM Policies
• Contain a statement (permissions) which specify a combination of :
• Who
• What actions
• Which AWS resources
• When
• Where
• How
Rob
Can GET/PUT objects in S3
Bucket = “*”
Until Dec 31, 2017
From IP range 123.456.789.012
If using MFA
IAM Policies
• JSON-formatted documents
Example of an Amazon S3 Read-Only Access Template
{
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:Get*", "s3:List*"],
"Resource": "*"
}
]
}
• Attach policy to a user, group, or role
(identity-based permissions)
• Attach policy to select resources e.g. Amazon
S3 buckets (resource-based permissions)
Example of
identity-based permission
Example of
resource-based permission
Rob
Can Read,
Write, List
On Resource :
icon-designs
icon-designs
Rob: Read,
Write, List
Samantha: List
Zoe: Read,
List
IAM Policies
Two types of identity-based policies in IAM
• Managed policies (newer way)
• Can be attached to multiple users, groups, and roles
• AWS managed policies (created and managed by AWS)
• Customer managed policies (created and managed by you)
o Up to 5K per policy
o Up to 5 versions
• You can limit who can attach managed policies
• Inline policies (the older way)
• You create and embed directly in a single user, group, or role
• Variable policy size (2K per user, 5K per group, 10K per role)
Live Demo
1. Create a new IAM user called Rob
2. Assign Rob a password
3. Enable MFA for Rob
(Authy 2FA app: https://www.authy.com/app/mobile/)
4. Require password reset at next sign-in
5. Grant Rob administrative permissions over Amazon S3
by attaching an AWS managed policy
i. Replace with a less permissive AWS managed policy
ii. Replace with a customer managed policy
Demo	
Time
Side bar
SSH Keys: you can associate an SSH key with your
IAM user and then use the SSH key to authenticate
with AWS CodeCommit (a managed source control
service)
Credential Reports: You can generate and download a
credential report that lists all IAM users in your
account and the status of their various credentials,
including passwords, access keys, and MFA devices.
For passwords and access keys, the credential report
shows how recently the password or access key has
been used
Example of retrieving Credential Report
Example of associating SSH keys to IAM user
Side bar
Trusted Advisor: your
customized cloud expert! It
helps you to observe best
practices for the use of AWS
by inspecting your AWS
environment with an eye
toward closing security gaps,
saving money, and improving
system performance and
reliability.
Example of identifying security gaps by using Trusted Advisor
IAM Groups
What
• Collection of IAM users
• Specify and manage permissions for multiple
users, centrally
• E.g. group for all UX Designers
• A group can contain many users, and a user
can belong to multiple groups
When
• Easily manage permissions for multiple users
AWS	Account
IAM	Group:	
Administrators
Akshay
Andrea
Arvind
IAM	Group:		
UX	Designers
Rob
Rachel
IAM	Group:	
DevOps
Akshay
Andrew
Lin
Zoe
Example of managing permission using groups
IAM Groups
Why (Benefits)
• Reduces the complexity of access
management as number of users
grow
• Easy way to reassign permissions
based on change in responsibility
• Easy way to update permissions for
multiple users
• Reduces the opportunity for a user
to accidently get excessive access
Do
• Create groups that relate to job
functions
• Attach policies to groups
• Use managed policies to logically
manage permissions
• Manage group membership to assign
permissions
Live Demo
1. Create a new IAM group called UXDesigners
2. Assign permissions to the IAM group
3. Create a new IAM user called Rachel
4. Add Rob and Rachel to the IAM group
Demo	
Time
IAM Roles
What
• Another identity with permission policies that determine what the identity can
and cannot do in AWS
• Can be assumed by anyone who needs it; not uniquely associated with one
person or application
• Does not have credentials; access keys are created and provided dynamically
When
• Give cross-account access
• Give access within an account
• E.g. access for application running on Amazon EC2
• [Federation] Give access to identities defined outside AWS
• E.g. access for identities maintained in your corporate IdP
Use IAM roles to share access
Why (Benefits)
• No need to share security
credentials
• No need to store long-term
credentials
• Control who has access
Do
• Use roles to delegate cross-account
access
• Use roles to delegate access within an
account
• Use roles to provide access for
federated users
prod@example.com
Acct	ID:	111122223333
ddb-role
{ "Statement": [
{ "Action":
[
"dynamodb:GetItem",
"dynamodb:BatchGetItem",
"dynamodb:DescribeTable",
"dynamodb:ListTables"
],
"Effect": "Allow",
"Resource": "*“
}]}
dev@example.com
Acct	ID:	123456789012
Authenticate	with	
Rob’	access	keys
Get	temporary	
security	credentials	
for	ddb-role
Call	AWS	APIs	using	
temporary	security	
credentials
of	ddb-role
{ "Statement": [
{
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource":
"arn:aws:iam::111122223333:role/ddb-role"
}]}
{ "Statement": [
{
"Effect":"Allow",
"Principal":{"AWS":"123456789012"},
"Action":"sts:AssumeRole"
}]}
ddb-role trusts	IAM	users	from	the	AWS	account	
dev@example.com	(123456789012)
Permissions	assigned	to	
Rob	granting	him	
permission	to	assume	ddb-
role in	account	B
IAM	user:	Rob
Permissions	assigned	to	ddb-role
STS
Use IAM roles for cross-account access
Use IAM roles for Amazon EC2 instances
Why (Benefits)
• Easy to manage access keys on
EC2 instances
• Automatic key rotation
• AWS SDKs fully integrated
• AWS CLI fully integrated
Do
• Use roles instead of long term
credentials
• Assign least privilege to the
application
1. Use Switch Role between two accounts
2. Launch an EC2 instance with a role Demo	
Time
Pop-up Loft
Questions?
Pop-up Loft
aws.amazon.com/activate
Everything and Anything Startups
Need to Get Started on AWS

Contenu connexe

Tendances

AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
Simplilearn
 

Tendances (20)

Introduction to Amazon EC2
Introduction to Amazon EC2Introduction to Amazon EC2
Introduction to Amazon EC2
 
AWS IAM and security
AWS IAM and securityAWS IAM and security
AWS IAM and security
 
Introduction to Amazon EC2
Introduction to Amazon EC2Introduction to Amazon EC2
Introduction to Amazon EC2
 
Amazon S3 Masterclass
Amazon S3 MasterclassAmazon S3 Masterclass
Amazon S3 Masterclass
 
AWS Control Tower
AWS Control TowerAWS Control Tower
AWS Control Tower
 
Identity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS SecurityIdentity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS Security
 
AWS Cloud Watch
AWS Cloud WatchAWS Cloud Watch
AWS Cloud Watch
 
Introduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best PracticesIntroduction to AWS VPC, Guidelines, and Best Practices
Introduction to AWS VPC, Guidelines, and Best Practices
 
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
AWS S3 | Tutorial For Beginners | AWS S3 Bucket Tutorial | AWS Tutorial For B...
 
AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos...
AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos...AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos...
AWS IAM Tutorial | Identity And Access Management (IAM) | AWS Training Videos...
 
Security Architectures on AWS
Security Architectures on AWSSecurity Architectures on AWS
Security Architectures on AWS
 
Amazon GuardDuty: Intelligent Threat Detection and Continuous Monitoring to P...
Amazon GuardDuty: Intelligent Threat Detection and Continuous Monitoring to P...Amazon GuardDuty: Intelligent Threat Detection and Continuous Monitoring to P...
Amazon GuardDuty: Intelligent Threat Detection and Continuous Monitoring to P...
 
(SEC318) AWS CloudTrail Deep Dive
(SEC318) AWS CloudTrail Deep Dive(SEC318) AWS CloudTrail Deep Dive
(SEC318) AWS CloudTrail Deep Dive
 
AWS Landing Zone Deep Dive (ENT350-R2) - AWS re:Invent 2018
AWS Landing Zone Deep Dive (ENT350-R2) - AWS re:Invent 2018AWS Landing Zone Deep Dive (ENT350-R2) - AWS re:Invent 2018
AWS Landing Zone Deep Dive (ENT350-R2) - AWS re:Invent 2018
 
AWS 101: Introduction to AWS
AWS 101: Introduction to AWSAWS 101: Introduction to AWS
AWS 101: Introduction to AWS
 
AWS Security Best Practices
AWS Security Best PracticesAWS Security Best Practices
AWS Security Best Practices
 
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
 
Deploy and Govern at Scale with AWS Control Tower
Deploy and Govern at Scale with AWS Control TowerDeploy and Govern at Scale with AWS Control Tower
Deploy and Govern at Scale with AWS Control Tower
 
Aws cloud watch
Aws cloud watchAws cloud watch
Aws cloud watch
 
AWS Simple Storage Service (s3)
AWS Simple Storage Service (s3) AWS Simple Storage Service (s3)
AWS Simple Storage Service (s3)
 

Similaire à AWS IAM Introduction

AWS Identity and access management for users
AWS Identity and access management for usersAWS Identity and access management for users
AWS Identity and access management for users
StephenEfange3
 

Similaire à AWS IAM Introduction (20)

Identity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS SecurityIdentity and Access Management: The First Step in AWS Security
Identity and Access Management: The First Step in AWS Security
 
AWS deployment and management Services
AWS deployment and management ServicesAWS deployment and management Services
AWS deployment and management Services
 
AWS core services
AWS core servicesAWS core services
AWS core services
 
Identify and Access Management: The First Step in AWS Security
Identify and Access Management: The First Step in AWS SecurityIdentify and Access Management: The First Step in AWS Security
Identify and Access Management: The First Step in AWS Security
 
Aws iam best practices to live by
Aws iam best practices to live byAws iam best practices to live by
Aws iam best practices to live by
 
Controlling Access to your Resources
Controlling Access to your ResourcesControlling Access to your Resources
Controlling Access to your Resources
 
Delegating Access to your AWS Environment (SEC303) | AWS re:Invent 2013
Delegating Access to your AWS Environment (SEC303) | AWS re:Invent 2013Delegating Access to your AWS Environment (SEC303) | AWS re:Invent 2013
Delegating Access to your AWS Environment (SEC303) | AWS re:Invent 2013
 
Diving into Common AWS Misconfigurations
Diving into Common AWS MisconfigurationsDiving into Common AWS Misconfigurations
Diving into Common AWS Misconfigurations
 
AWS Partner Webcast - Get Closer to the Cloud with Federated Single Sign-On
AWS Partner Webcast - Get Closer to the Cloud with Federated Single Sign-OnAWS Partner Webcast - Get Closer to the Cloud with Federated Single Sign-On
AWS Partner Webcast - Get Closer to the Cloud with Federated Single Sign-On
 
Security Best Practices - Hebrew Webinar
Security Best Practices - Hebrew WebinarSecurity Best Practices - Hebrew Webinar
Security Best Practices - Hebrew Webinar
 
Security Day IAM Recommended Practices
Security Day IAM Recommended PracticesSecurity Day IAM Recommended Practices
Security Day IAM Recommended Practices
 
AWS Identity and access management for users
AWS Identity and access management for usersAWS Identity and access management for users
AWS Identity and access management for users
 
AWS Identity, Directory, and Access Services: An Overview
AWS Identity, Directory, and Access Services: An Overview AWS Identity, Directory, and Access Services: An Overview
AWS Identity, Directory, and Access Services: An Overview
 
AWS re:Invent 2016: IAM Best Practices to Live By (SAC317)
AWS re:Invent 2016: IAM Best Practices to Live By (SAC317)AWS re:Invent 2016: IAM Best Practices to Live By (SAC317)
AWS re:Invent 2016: IAM Best Practices to Live By (SAC317)
 
AWS Identity, Directory, and Access Services: An Overview - SID201 - Chicago ...
AWS Identity, Directory, and Access Services: An Overview - SID201 - Chicago ...AWS Identity, Directory, and Access Services: An Overview - SID201 - Chicago ...
AWS Identity, Directory, and Access Services: An Overview - SID201 - Chicago ...
 
Security Day IAM Recommended Practices
Security Day IAM Recommended PracticesSecurity Day IAM Recommended Practices
Security Day IAM Recommended Practices
 
AWSM2C3.pptx
AWSM2C3.pptxAWSM2C3.pptx
AWSM2C3.pptx
 
SID201 Overview of AWS Identity, Directory, and Access Services
 SID201 Overview of AWS Identity, Directory, and Access Services SID201 Overview of AWS Identity, Directory, and Access Services
SID201 Overview of AWS Identity, Directory, and Access Services
 
Foundations - Understanding the Critical Building Blocks of AWS Identity & Go...
Foundations - Understanding the Critical Building Blocks of AWS Identity & Go...Foundations - Understanding the Critical Building Blocks of AWS Identity & Go...
Foundations - Understanding the Critical Building Blocks of AWS Identity & Go...
 
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
 

Plus de Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

Plus de Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

AWS IAM Introduction

  • 1. Pop-up Loft IAM Introduction Apurv Awasthi, Senior Product Manager AWS Identity and Access Management (IAM)
  • 2. What to Expect from the Session We will look at: • What is IAM? • IAM Concepts – to help you get started • Common use cases – cover the building blocks • Demos – “Show and Tell”
  • 3. AWS Identity and Access Management (IAM) • Enables you to control who can do what in your AWS account • IAM uses access control concepts that you are already familiar with User Group Permissions (IAM Policies) Role AWS Services and Resources
  • 4. AWS Identity and Access Management (IAM) • Control – Centralized – Fine-grained - APIs, resources, and AWS Management Console • Security – Secure (deny) by default – Multiple users, individual security credentials and permissions
  • 5. IAM Users What • Entity that represents the person or service that uses it to interact with AWS • Consists of a name and unique set of credentials • Console password • Access Key • MFA device (SMS, Virtual, or Hardware) • Each IAM user is associated with one and only one AWS account; does not require a separate payment method. When • Enable human or programmatic access to AWS resources and services • E.g. New employee, Rob, requires access to Amazon EC2 and Amazon S3 services • E.g. Rob has created an application that stores data in Amazon DynamoDB
  • 6. IAM Users Why (Benefits) • Unique set of credentials • Individual permissions • Granular control • Easy to revoke access Do • Create IAM user for yourself • Create individual IAM users for others Don’t • Distribute your AWS root credentials • Use your root account user • Share your IAM user credentials
  • 7. IAM Users and Permissions • No permissions by default • Permissions specify who has access to AWS resources, and what actions they can perform on those resources • Assign permissions individually to each user (or use Groups) • Rob (UX Designer) > access to Amazon S3 • Samantha (Database Administrator) > access to select Amazon EC2, Amazon RDS, Amazon DynamoDB, AWS Lambda, and AWS Data Pipeline APIs • Use IAM Policies to assign permissions
  • 8. IAM Policies • Contain a statement (permissions) which specify a combination of : • Who • What actions • Which AWS resources • When • Where • How Rob Can GET/PUT objects in S3 Bucket = “*” Until Dec 31, 2017 From IP range 123.456.789.012 If using MFA
  • 9. IAM Policies • JSON-formatted documents Example of an Amazon S3 Read-Only Access Template { "Statement": [ { "Effect": "Allow", "Action": ["s3:Get*", "s3:List*"], "Resource": "*" } ] } • Attach policy to a user, group, or role (identity-based permissions) • Attach policy to select resources e.g. Amazon S3 buckets (resource-based permissions) Example of identity-based permission Example of resource-based permission Rob Can Read, Write, List On Resource : icon-designs icon-designs Rob: Read, Write, List Samantha: List Zoe: Read, List
  • 10. IAM Policies Two types of identity-based policies in IAM • Managed policies (newer way) • Can be attached to multiple users, groups, and roles • AWS managed policies (created and managed by AWS) • Customer managed policies (created and managed by you) o Up to 5K per policy o Up to 5 versions • You can limit who can attach managed policies • Inline policies (the older way) • You create and embed directly in a single user, group, or role • Variable policy size (2K per user, 5K per group, 10K per role)
  • 11. Live Demo 1. Create a new IAM user called Rob 2. Assign Rob a password 3. Enable MFA for Rob (Authy 2FA app: https://www.authy.com/app/mobile/) 4. Require password reset at next sign-in 5. Grant Rob administrative permissions over Amazon S3 by attaching an AWS managed policy i. Replace with a less permissive AWS managed policy ii. Replace with a customer managed policy Demo Time
  • 12. Side bar SSH Keys: you can associate an SSH key with your IAM user and then use the SSH key to authenticate with AWS CodeCommit (a managed source control service) Credential Reports: You can generate and download a credential report that lists all IAM users in your account and the status of their various credentials, including passwords, access keys, and MFA devices. For passwords and access keys, the credential report shows how recently the password or access key has been used Example of retrieving Credential Report Example of associating SSH keys to IAM user
  • 13. Side bar Trusted Advisor: your customized cloud expert! It helps you to observe best practices for the use of AWS by inspecting your AWS environment with an eye toward closing security gaps, saving money, and improving system performance and reliability. Example of identifying security gaps by using Trusted Advisor
  • 14. IAM Groups What • Collection of IAM users • Specify and manage permissions for multiple users, centrally • E.g. group for all UX Designers • A group can contain many users, and a user can belong to multiple groups When • Easily manage permissions for multiple users AWS Account IAM Group: Administrators Akshay Andrea Arvind IAM Group: UX Designers Rob Rachel IAM Group: DevOps Akshay Andrew Lin Zoe Example of managing permission using groups
  • 15. IAM Groups Why (Benefits) • Reduces the complexity of access management as number of users grow • Easy way to reassign permissions based on change in responsibility • Easy way to update permissions for multiple users • Reduces the opportunity for a user to accidently get excessive access Do • Create groups that relate to job functions • Attach policies to groups • Use managed policies to logically manage permissions • Manage group membership to assign permissions
  • 16. Live Demo 1. Create a new IAM group called UXDesigners 2. Assign permissions to the IAM group 3. Create a new IAM user called Rachel 4. Add Rob and Rachel to the IAM group Demo Time
  • 17. IAM Roles What • Another identity with permission policies that determine what the identity can and cannot do in AWS • Can be assumed by anyone who needs it; not uniquely associated with one person or application • Does not have credentials; access keys are created and provided dynamically When • Give cross-account access • Give access within an account • E.g. access for application running on Amazon EC2 • [Federation] Give access to identities defined outside AWS • E.g. access for identities maintained in your corporate IdP
  • 18. Use IAM roles to share access Why (Benefits) • No need to share security credentials • No need to store long-term credentials • Control who has access Do • Use roles to delegate cross-account access • Use roles to delegate access within an account • Use roles to provide access for federated users
  • 19. prod@example.com Acct ID: 111122223333 ddb-role { "Statement": [ { "Action": [ "dynamodb:GetItem", "dynamodb:BatchGetItem", "dynamodb:DescribeTable", "dynamodb:ListTables" ], "Effect": "Allow", "Resource": "*“ }]} dev@example.com Acct ID: 123456789012 Authenticate with Rob’ access keys Get temporary security credentials for ddb-role Call AWS APIs using temporary security credentials of ddb-role { "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::111122223333:role/ddb-role" }]} { "Statement": [ { "Effect":"Allow", "Principal":{"AWS":"123456789012"}, "Action":"sts:AssumeRole" }]} ddb-role trusts IAM users from the AWS account dev@example.com (123456789012) Permissions assigned to Rob granting him permission to assume ddb- role in account B IAM user: Rob Permissions assigned to ddb-role STS Use IAM roles for cross-account access
  • 20. Use IAM roles for Amazon EC2 instances Why (Benefits) • Easy to manage access keys on EC2 instances • Automatic key rotation • AWS SDKs fully integrated • AWS CLI fully integrated Do • Use roles instead of long term credentials • Assign least privilege to the application
  • 21. 1. Use Switch Role between two accounts 2. Launch an EC2 instance with a role Demo Time
  • 23. Pop-up Loft aws.amazon.com/activate Everything and Anything Startups Need to Get Started on AWS