SlideShare a Scribd company logo
1 of 35
Download to read offline
© 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
IAM Best Practices to Live By
Ran Tessler, AWS Solutions Architect
November 2015
AWS Identity and Access Management (IAM)
Enables you to control who can do what in your AWS account
Users, groups, roles, and permissions
Control
– Centralized
– Fine-grained - APIs, resources, and AWS Management Console
Security
– Secure (deny) by default
– Multiple users, individual security credentials and permissions
What to expect from this session
We will look at:
• Best practices – To help you get started
• Versus – When to use one technology over another
• Demos – “Show and tell”
IAM Best Practices
• Basic user and permission management
• Credential management
• Delegation
Basic user and permission management
0. Create individual users Benefits
• Unique credentials
• Individual credential rotation
• Individual permissions
Basic user and permission management
0. Create individual users
1. Grant least privilege
Benefits
• Less chance of people making
mistakes
• Easier to relax than tighten up
• More granular control
Basic user and permission management
0. Create individual users
1. Grant least privilege
2. Manage permissions with groups
Benefits
• Easier to assign the same
permissions to multiple users
• Simpler to reassign permissions
based on change in
responsibilities
• Only one change to update
permissions for multiple users
Basic user and permission management
0. Create individual users
1. Grant least privilege
2. Manage permissions with groups
3. Restrict privileged access further with conditions
Benefits
• Additional granularity when
defining permissions
• Can be enabled for any AWS
service API
• Minimizes chances of
accidentally performing
privileged actions
Basic user and permission management
0. Create individual users
1. Grant least privilege
2. Manage permissions with groups
3. Restrict privileged access further with conditions
4. Enable AWS CloudTrail to get logs of API calls
Benefits
• Visibility into your user activity by
recording AWS API calls to an
Amazon S3 bucket
Credential management
5. Configure a strong password policy Benefits
• Ensures your users and your
data are protected
Credential management
5. Configure a strong password policy
6. Rotate security credentials regularly
Benefits
• Normal best practice
Credential management
5. Configure a strong password policy
6. Rotate security credentials regularly
7. Enable MFA for privileged users
Benefits
• Supplements user name and
password to require a one-time
code during authentication
Delegation
8. Use IAM roles to share access Benefits
• No need to share security
credentials
• No need to store long-term
credentials
• Use cases
- Cross-account access
- Intra-account delegation
- Federation
Delegation
8. Use IAM roles to share access
9. Use IAM roles for Amazon EC2 instances
Benefits
• Easy to manage access keys on
EC2 instances
• Automatic key rotation
• Assign least privilege to the
application
• AWS SDKs fully integrated
• AWS CLI fully integrated
Delegation
8. Use IAM roles to share access
9. Use IAM roles for Amazon EC2 instances
10. Reduce or remove use of root
Benefits
• Reduce potential for misuse of
credentials
Versus – When should I use…?
IAM users vs. federated users
• Depends on where you want to manage your users
– On-premises → Federated users (IAM roles)
– In your AWS account → IAM users
• Other important use cases
– Delegating access to your account → Federated users (IAM roles)
– Mobile application access → Should always be federated access
IMPORTANT: Never share security credentials.
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
Ran’s 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"
}]}
How does federated access work?
ddb-role trusts IAM users from the AWS account
dev@example.com (123456789012)
Permissions assigned
to Ran granting him
permission to assume
ddb-role in account B
IAM user: Ran
Permissions assigned to ddb-role
STS
AWS access keys vs. passwords
• Depends on how your users will access AWS
– Console → Password
– API, CLI, SDK → Access keys
• In either case make sure to rotate credentials regularly
– Use Credential Report to audit credential rotation.
– Configure password policy.
– Configure policy to allow access key rotation.
Enabling credential rotation for IAM users
(Enable access key rotation sample policy)
Access keys
{
"Version":"2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": [
"iam:CreateAccessKey",
"iam:DeleteAccessKey",
"iam:ListAccessKeys",
"iam:UpdateAccessKey"],
"Resource":
"arn:aws:iam::123456789012:
user/${aws:username}"
}]}
1. While the first set of credentials is still
active, create a second set of credentials,
which will also be active by default.
2. Update all applications to use the new
credentials.
3. Change the state of the first set of
credentials to Inactive.
4. Using only the new credentials, confirm
that your applications are working well.
5. Delete the first set of credentials.
Steps to rotate access keys
Inline policies vs. managed policies
• Use inline policies when you need to:
– Enforce a strict one-to-one relationship between policy and principal.
– Avoid the wrong policy being attached to a principal.
– Ensure the policy is deleted when deleting the principal.
• Use managed policies when you need:
– Reusability.
– Central change management.
– Versioning and rollback.
– Delegation of permissions management.
– Automatic updates for AWS managed policies.
– Larger policy size.
Groups vs. managed policies
• Provide similar benefits
– Can be used to assign the same permission to many users.
– Central location to manage permissions.
– Policy updates affect multiple users.
• Use groups when you need to
– Logically group and manage IAM users .
• Use managed policies when you need to
– Assign the same policy to users, groups, and roles.
Combine the power of groups AND managed policies
• Use groups to organize your users into logical clusters.
• Attach managed policies to those groups with the permissions those groups
need.
• Pro tip: Create managed policies based on logically separated permissions
such as AWS service or project, and attach managed policies mix-and-
match style to your groups.
How does tag-based access control work?
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "ec2:*",
"Resource": "*",
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Project" : "Blue"
}
}
}
]
}
Permissions assigned to Bob granting him permission to
perform any EC2 action on resources tagged with
Project=Blue
IAM user: Bob
i-a1234b12
Project=Blue
i-a4321b12
Project=Blue
Project=Blue
i-a4321b12
Project=Green
Resource-specific policy vs. tag-based access control
• Use resource-specific policy when you need to:
• Control access to a specific resource.
• Control access to most AWS service resources.
• Use tag-based access control when you need to:
• Treat resources as a unit, such as a project.
• Automatically enforce permissions when new resources are created.
NOTE: The following services currently support tag-based access control:
Amazon EC2, Amazon VPC, Amazon EBS, Amazon RDS, Amazon Simple
Workflow Service, and AWS Data Pipeline
One AWS account vs. multiple AWS accounts?
Use a single AWS account when you:
• Want simpler control of who does what in your AWS environment.
• Have no need to isolate projects/products/teams.
• Have no need for breaking up the cost.
Use multiple AWS accounts when you:
• Need full isolation between projects/teams/environments.
• Want to isolate recovery data and/or auditing data (e.g., writing your
CloudTrail logs to a different account).
• Need a single bill, but want to break out the cost and usage.
Cross-account access with IAM roles
External identity
provider
acme@example.com
Acct ID: 123456789012
dev@example.com
Acct ID: 123456123456
proj2@example.com
Acct ID: 111222333444
proj1@example.com
Acct ID: 112233445566
IAM user: Alice
IAM user: Bob
What did we cover?
1. Top 11 best practices.
2. IAM users vs. federated users.
3. Access keys vs. passwords.
4. Inline policies vs. managed policies.
5. Groups vs. managed policies.
6. Resource-specific policy vs. tag-based access control.
7. One AWS account vs. multiple AWS accounts.
Thank you!

More Related Content

What's hot

클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
Amazon Web Services Korea
 
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
Amazon Web Services Korea
 

What's hot (20)

Intro to Amazon S3
Intro to Amazon S3Intro to Amazon S3
Intro to Amazon S3
 
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
 
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptxJoel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
 
한국투자증권의 디지털 플랫폼 구현 사례.pdf
한국투자증권의 디지털 플랫폼 구현 사례.pdf한국투자증권의 디지털 플랫폼 구현 사례.pdf
한국투자증권의 디지털 플랫폼 구현 사례.pdf
 
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
클라우드 마이그레이션을 통한 비지니스 성공 사례- AWS Summit Seoul 2017
 
Azure Governance
Azure GovernanceAzure Governance
Azure Governance
 
Azure Backup Simplifies
Azure Backup SimplifiesAzure Backup Simplifies
Azure Backup Simplifies
 
An introduction to Office 365 Advanced Threat Protection (ATP)
An introduction to Office 365 Advanced Threat Protection (ATP)An introduction to Office 365 Advanced Threat Protection (ATP)
An introduction to Office 365 Advanced Threat Protection (ATP)
 
DMS와 SCT를 활용한 Oracle에서 Open Source DB로의 전환
DMS와 SCT를 활용한 Oracle에서 Open Source DB로의 전환DMS와 SCT를 활용한 Oracle에서 Open Source DB로의 전환
DMS와 SCT를 활용한 Oracle에서 Open Source DB로의 전환
 
AWS Fault Injection Simulator를 통한 실전 카오스 엔지니어링 - 윤석찬 AWS 수석 테크에반젤리스트 / 김신 SW엔...
AWS Fault Injection Simulator를 통한 실전 카오스 엔지니어링 - 윤석찬 AWS 수석 테크에반젤리스트 / 김신 SW엔...AWS Fault Injection Simulator를 통한 실전 카오스 엔지니어링 - 윤석찬 AWS 수석 테크에반젤리스트 / 김신 SW엔...
AWS Fault Injection Simulator를 통한 실전 카오스 엔지니어링 - 윤석찬 AWS 수석 테크에반젤리스트 / 김신 SW엔...
 
Intro to AWS: Database Services
Intro to AWS: Database ServicesIntro to AWS: Database Services
Intro to AWS: Database Services
 
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
Serverless 개발에서의 인증 완벽 가이드::박선용::AWS Summit Seoul 2018
 
AWS Cloud trail
AWS Cloud trailAWS Cloud trail
AWS Cloud trail
 
Business process modeling and analysis for data warehouse design
Business process modeling and analysis for data warehouse designBusiness process modeling and analysis for data warehouse design
Business process modeling and analysis for data warehouse design
 
Leveraging AWS Partner Network (APN) Resources
Leveraging AWS Partner Network (APN) ResourcesLeveraging AWS Partner Network (APN) Resources
Leveraging AWS Partner Network (APN) Resources
 
AWS Black Belt Tech シリーズ 2016 - Amazon SES
AWS Black Belt Tech シリーズ 2016 - Amazon SESAWS Black Belt Tech シリーズ 2016 - Amazon SES
AWS Black Belt Tech シリーズ 2016 - Amazon SES
 
AWS Summit Seoul 2023 | 12가지 디자인 패턴으로 알아보는 클라우드 네이티브 마이크로서비스 아키텍처
AWS Summit Seoul 2023 | 12가지 디자인 패턴으로 알아보는 클라우드 네이티브 마이크로서비스 아키텍처AWS Summit Seoul 2023 | 12가지 디자인 패턴으로 알아보는 클라우드 네이티브 마이크로서비스 아키텍처
AWS Summit Seoul 2023 | 12가지 디자인 패턴으로 알아보는 클라우드 네이티브 마이크로서비스 아키텍처
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
 
[Azure Governance] Lesson 2 : Azure Locks
[Azure Governance] Lesson 2 : Azure Locks[Azure Governance] Lesson 2 : Azure Locks
[Azure Governance] Lesson 2 : Azure Locks
 
Managing a Database Migration Project Best Practices and Customer References.pdf
Managing a Database Migration Project Best Practices and Customer References.pdfManaging a Database Migration Project Best Practices and Customer References.pdf
Managing a Database Migration Project Best Practices and Customer References.pdf
 

Similar to Controlling Access to your Resources

Similar to Controlling Access to your Resources (20)

IAM Best Practices to Live By - Pop-up Loft Tel Aviv
IAM Best Practices to Live By - Pop-up Loft Tel AvivIAM Best Practices to Live By - Pop-up Loft Tel Aviv
IAM Best Practices to Live By - Pop-up Loft Tel Aviv
 
Security Day IAM Recommended Practices
Security Day IAM Recommended PracticesSecurity Day IAM Recommended Practices
Security Day IAM Recommended Practices
 
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
 
Security Day IAM Recommended Practices
Security Day IAM Recommended PracticesSecurity Day IAM Recommended Practices
Security Day IAM Recommended Practices
 
IAM Recommended Practices
IAM Recommended PracticesIAM Recommended Practices
IAM Recommended Practices
 
(SEC302) IAM Best Practices To Live By
(SEC302) IAM Best Practices To Live By(SEC302) IAM Best Practices To Live By
(SEC302) IAM Best Practices To Live By
 
Aws security best practices
Aws security best practicesAws security best practices
Aws security best practices
 
IAM Introduction and Best Practices
IAM Introduction and Best PracticesIAM Introduction and Best Practices
IAM Introduction and Best Practices
 
IAM Best Practices
IAM Best PracticesIAM Best Practices
IAM Best Practices
 
IAM Best Practices
IAM Best PracticesIAM Best Practices
IAM Best Practices
 
Introduction to IAM + Best Practices
Introduction to IAM + Best PracticesIntroduction to IAM + Best Practices
Introduction to IAM + Best Practices
 
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)
 
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
 
Advanced security best practices - Masterclass - Pop-up Loft Tel Aviv
Advanced security best practices - Masterclass - Pop-up Loft Tel AvivAdvanced security best practices - Masterclass - Pop-up Loft Tel Aviv
Advanced security best practices - Masterclass - Pop-up Loft Tel Aviv
 
Advanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv LoftAdvanced Security Masterclass - Tel Aviv Loft
Advanced Security Masterclass - Tel Aviv Loft
 
Top 10 AWS Identity and Access Management (IAM) Best Practices (SEC301) | AWS...
Top 10 AWS Identity and Access Management (IAM) Best Practices (SEC301) | AWS...Top 10 AWS Identity and Access Management (IAM) Best Practices (SEC301) | AWS...
Top 10 AWS Identity and Access Management (IAM) Best Practices (SEC301) | AWS...
 
AWS IAM Introduction
AWS IAM IntroductionAWS IAM Introduction
AWS IAM Introduction
 
Introduction to AWS IAM
Introduction to AWS IAMIntroduction to AWS IAM
Introduction to AWS IAM
 
IAM Introduction
IAM IntroductionIAM Introduction
IAM Introduction
 
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
 

More from 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
 

More from 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
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 

Controlling Access to your Resources

  • 1. © 2015, Amazon Web Services, Inc. or its Affiliates. All rights reserved. IAM Best Practices to Live By Ran Tessler, AWS Solutions Architect November 2015
  • 2. AWS Identity and Access Management (IAM) Enables you to control who can do what in your AWS account Users, groups, roles, and permissions Control – Centralized – Fine-grained - APIs, resources, and AWS Management Console Security – Secure (deny) by default – Multiple users, individual security credentials and permissions
  • 3. What to expect from this session We will look at: • Best practices – To help you get started • Versus – When to use one technology over another • Demos – “Show and tell”
  • 4. IAM Best Practices • Basic user and permission management • Credential management • Delegation
  • 5. Basic user and permission management 0. Create individual users Benefits • Unique credentials • Individual credential rotation • Individual permissions
  • 6. Basic user and permission management 0. Create individual users 1. Grant least privilege Benefits • Less chance of people making mistakes • Easier to relax than tighten up • More granular control
  • 7. Basic user and permission management 0. Create individual users 1. Grant least privilege 2. Manage permissions with groups Benefits • Easier to assign the same permissions to multiple users • Simpler to reassign permissions based on change in responsibilities • Only one change to update permissions for multiple users
  • 8. Basic user and permission management 0. Create individual users 1. Grant least privilege 2. Manage permissions with groups 3. Restrict privileged access further with conditions Benefits • Additional granularity when defining permissions • Can be enabled for any AWS service API • Minimizes chances of accidentally performing privileged actions
  • 9. Basic user and permission management 0. Create individual users 1. Grant least privilege 2. Manage permissions with groups 3. Restrict privileged access further with conditions 4. Enable AWS CloudTrail to get logs of API calls Benefits • Visibility into your user activity by recording AWS API calls to an Amazon S3 bucket
  • 10. Credential management 5. Configure a strong password policy Benefits • Ensures your users and your data are protected
  • 11. Credential management 5. Configure a strong password policy 6. Rotate security credentials regularly Benefits • Normal best practice
  • 12. Credential management 5. Configure a strong password policy 6. Rotate security credentials regularly 7. Enable MFA for privileged users Benefits • Supplements user name and password to require a one-time code during authentication
  • 13. Delegation 8. Use IAM roles to share access Benefits • No need to share security credentials • No need to store long-term credentials • Use cases - Cross-account access - Intra-account delegation - Federation
  • 14. Delegation 8. Use IAM roles to share access 9. Use IAM roles for Amazon EC2 instances Benefits • Easy to manage access keys on EC2 instances • Automatic key rotation • Assign least privilege to the application • AWS SDKs fully integrated • AWS CLI fully integrated
  • 15. Delegation 8. Use IAM roles to share access 9. Use IAM roles for Amazon EC2 instances 10. Reduce or remove use of root Benefits • Reduce potential for misuse of credentials
  • 16. Versus – When should I use…?
  • 17.
  • 18. IAM users vs. federated users • Depends on where you want to manage your users – On-premises → Federated users (IAM roles) – In your AWS account → IAM users • Other important use cases – Delegating access to your account → Federated users (IAM roles) – Mobile application access → Should always be federated access IMPORTANT: Never share security credentials.
  • 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 Ran’s 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" }]} How does federated access work? ddb-role trusts IAM users from the AWS account dev@example.com (123456789012) Permissions assigned to Ran granting him permission to assume ddb-role in account B IAM user: Ran Permissions assigned to ddb-role STS
  • 20.
  • 21. AWS access keys vs. passwords • Depends on how your users will access AWS – Console → Password – API, CLI, SDK → Access keys • In either case make sure to rotate credentials regularly – Use Credential Report to audit credential rotation. – Configure password policy. – Configure policy to allow access key rotation.
  • 22. Enabling credential rotation for IAM users (Enable access key rotation sample policy) Access keys { "Version":"2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "iam:CreateAccessKey", "iam:DeleteAccessKey", "iam:ListAccessKeys", "iam:UpdateAccessKey"], "Resource": "arn:aws:iam::123456789012: user/${aws:username}" }]} 1. While the first set of credentials is still active, create a second set of credentials, which will also be active by default. 2. Update all applications to use the new credentials. 3. Change the state of the first set of credentials to Inactive. 4. Using only the new credentials, confirm that your applications are working well. 5. Delete the first set of credentials. Steps to rotate access keys
  • 23.
  • 24. Inline policies vs. managed policies • Use inline policies when you need to: – Enforce a strict one-to-one relationship between policy and principal. – Avoid the wrong policy being attached to a principal. – Ensure the policy is deleted when deleting the principal. • Use managed policies when you need: – Reusability. – Central change management. – Versioning and rollback. – Delegation of permissions management. – Automatic updates for AWS managed policies. – Larger policy size.
  • 25.
  • 26. Groups vs. managed policies • Provide similar benefits – Can be used to assign the same permission to many users. – Central location to manage permissions. – Policy updates affect multiple users. • Use groups when you need to – Logically group and manage IAM users . • Use managed policies when you need to – Assign the same policy to users, groups, and roles.
  • 27. Combine the power of groups AND managed policies • Use groups to organize your users into logical clusters. • Attach managed policies to those groups with the permissions those groups need. • Pro tip: Create managed policies based on logically separated permissions such as AWS service or project, and attach managed policies mix-and- match style to your groups.
  • 28.
  • 29. How does tag-based access control work? { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:*", "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/Project" : "Blue" } } } ] } Permissions assigned to Bob granting him permission to perform any EC2 action on resources tagged with Project=Blue IAM user: Bob i-a1234b12 Project=Blue i-a4321b12 Project=Blue Project=Blue i-a4321b12 Project=Green
  • 30. Resource-specific policy vs. tag-based access control • Use resource-specific policy when you need to: • Control access to a specific resource. • Control access to most AWS service resources. • Use tag-based access control when you need to: • Treat resources as a unit, such as a project. • Automatically enforce permissions when new resources are created. NOTE: The following services currently support tag-based access control: Amazon EC2, Amazon VPC, Amazon EBS, Amazon RDS, Amazon Simple Workflow Service, and AWS Data Pipeline
  • 31.
  • 32. One AWS account vs. multiple AWS accounts? Use a single AWS account when you: • Want simpler control of who does what in your AWS environment. • Have no need to isolate projects/products/teams. • Have no need for breaking up the cost. Use multiple AWS accounts when you: • Need full isolation between projects/teams/environments. • Want to isolate recovery data and/or auditing data (e.g., writing your CloudTrail logs to a different account). • Need a single bill, but want to break out the cost and usage.
  • 33. Cross-account access with IAM roles External identity provider acme@example.com Acct ID: 123456789012 dev@example.com Acct ID: 123456123456 proj2@example.com Acct ID: 111222333444 proj1@example.com Acct ID: 112233445566 IAM user: Alice IAM user: Bob
  • 34. What did we cover? 1. Top 11 best practices. 2. IAM users vs. federated users. 3. Access keys vs. passwords. 4. Inline policies vs. managed policies. 5. Groups vs. managed policies. 6. Resource-specific policy vs. tag-based access control. 7. One AWS account vs. multiple AWS accounts.