SlideShare a Scribd company logo
1 of 48
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Foundations: Identity & Access
Management in AWS
Jeff Levine
Security Specialist, Solutions Archiect
AWS Solutions Architecture
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Agenda
• Overview of AWS Identity & Access Management
• IAM Authentication & Authorization
• AWS Identity Federation
• Recap of Best Practices
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Who Is This Jeff Levine Guy?
• The first computer I used was an HP 3000 Series II
• I have used keypunchers and card sorters.
• My first programming language was FORTRAN.
• I came to AWS in 2016.
• I help customers with real world security issues.
• I write blog posts and whitepapers.
• I like to scuba dive!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Let’s understand the basics of scuba…
(picture from
scuba.com)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
When things go wrong….
• When things go wrong, we need to remember our
basic training. It can save you.
• We need to regularly re-visit our basic training so we
know how things work so that when something
doesn’t work as expected, we can figure out why.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
AWS Identity & Access Management
IAM
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is IAM?
• IAM is a preventive security control
• What is a security control?
– Any hardware, software, policy or
procedure meant to govern access
to IT resources
• A preventive security control is one
intended to thwart unwanted or
unauthorized activity
Directive
Preventive
Detective
Responsive
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is AWS IAM?
• Create and manage AWS users, groups, and permissions to control
access to AWS resources
• Integrates with Microsoft Active Directory using SAML identity
federation and AWS Directory Service
• Roles can be created and assumed to control what operations can be
performed by an entity or AWS service (e.g. EC2 instance)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Why use AWS IAM?
• You can specify permissions to control which operations a user or role
can perform on AWS resources
• IAM service provides access to the AWS Management Console, AWS
API, and AWS Command-Line Interface (CLI)
Note: IAM does not provide authentication for your OS or application
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Planes of access
EC2
Control plane – AWS API
(example: ec2:StartInstances)
Data plane – VPC connection
(example: SSH, RDP)
Different:
• Paths
• Credentials
• Protocols
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Planes of access
DynamoDB
Control plane – AWS API
(example: dynamodb:CreateTable)
Data plane – AWS API
(example: dynamodb:GetItem)
Same:
• Path
• Credential
• Protocol
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM Users?
• IAM users can be an individual, system, or application requiring access
to AWS services
• A user account consists of a unique name and security credentials
such as a password, access key, and/or multi-factor authentication
(MFA)
• IAM users only need passwords when they access the AWS
Management Console
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM Groups?
• IAM Groups are a way to assign permissions to logical and functional
units of your organization
• IAM Groups are a tool to help with operational efficiency
– Bulk permissions management (scalable)
– Easy to change permissions as individuals change teams (portable)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM Roles?
• An IAM role is similar to a user, in that it is an AWS identity with
permission policies that determine what the identity can and cannot
do in AWS.
• You can authorize roles to be assumed by humans, Amazon EC2
instances, custom code, or other AWS services.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM Authentication & Authorization
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM Access Keys?
• IAM access keys are used to make programmatic calls to AWS using
the AWS Command Line Interface (CLI), the AWS SDKs, or direct
HTTPS calls to the APIs for individual AWS services
• Consists of an Access Key ID and a Secret Access Key
• Example:
– Access Key ID: AKIA3R7HGUSSI4BOW
– Secret Access Key: MxQ4QSzT0NsnEO5VNCYjJo
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is the signing process?
• AWS Signature Version 4 is the process to add authentication
information to AWS requests.
– The AWS SDKs or CLI tools will construct, sign, and send requests for you,
with the access keys you provide.
– If you are constructing AWS API requests yourself, you will have to
include code to sign the requests.
• http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM passwords?
• IAM passwords are credentials used by IAM users to authenticate to
the AWS Management Console.
• A password policy can be configured for the AWS account
• Alphanumeric and common special characters are allowed:
! @ # $ % ^ & * ( ) _ + - = [ ] { } | ‘
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
When should I use 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
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is an IAM principal?
• IAM principal refers to a user, account, service, role, or other entity
• In terms of evaluating authorization, a principal is defined as the
entity that is allowed or denied access to a resource.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM policies?
• IAM policies are JSON-based statements that define access control
and permissions
• IAM polices can be “inline” or “managed”
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Example IAM policy
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::example_bucket"
}
}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Be careful of the consequences:
{
"Version": "2012-10-17",
"Statement": {
"Effect": "Allow",
"Action": “iam:*",
"Resource": “*"
}
}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM Policies?
• Inline policies are policies that you create and manage, and that are
embedded directly into a single user, group, or role.
• Managed policies are standalone policies that you can manage
separately from the IAM users, groups, or roles to which they are
attached
– AWS managed policies
– Customer managed polices
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Choosing Inline 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
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Choosing Inline vs Managed Policies
• 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
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are Resource-based policies?
• To specify resource-based permissions, you attach an inline policy to a
supported resource, such as an Amazon SNS topic, an Amazon S3
bucket, an AWS KMS key, or an Amazon Glacier vault.
• Resource-based policies must specify who is allowed to access the
resource, known as the Principal.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Policy structure
Identity-based policy Resource-based policy
{
"Statement":[{
"Effect":"effect",
"Principal":"principal",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value" }
}
}
]
}
{
"Statement":[{
"Effect":"effect",
"Principal":"principal",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value" }
}
}
]
}
{
"Statement":[{
"Effect":"effect",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value" }
}
}
]
}
{
"Statement":[{
"Effect":"effect",
"Action":"action",
"Resource":"arn",
"Condition":{
"condition":{
"key":"value" }
}
}
]
}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is the key difference?
• With Identity-based Policies, the Principal is implicit.
• With Resource-based Policies, the Principal is explicit.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM evaluation logic
• By default, the decision is default deny
• An allow overrides any default denies
• An explicit deny overrides any allows
• The order in which the policies are evaluated is not important
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM Policy Evaluation Logic
Final decision =“deny”
(explicit deny)
Yes
Final decision =“allow”
Yes
No Is there an
Allow?
4
Decision
starts at Deny
1
Evaluate all
applicable
policies
2
Is there an
explicit
deny?
3
No Final decision =“deny”
(default deny)
5
• AWS retrieves all policies
associated with the user
and resource.
• Only policies that match the
action and conditions are
evaluated.
If a policy statement
has a deny, it trumps all
other policy statements.
Access is granted if
there is an explicit
allow and no deny.
By default, an
implicit (default)
deny is returned.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Prevent privilege escalation
• Any principal with full IAM permissions is effectively a super user,
even if no other permissions have been granted.
• Why? The principal can modify its own permissions at any time.
• To prevent this, deny access to at least these IAM actions:
– iam:AttachUserPolicy
– iam:AttachGroupPolicy
– iam:AttachRolePolicy
– iam:PutUserPolicy
– iam:PutGroupPolicy
– iam:PutRolePolicy
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is the IAM Policy Simulator?
The IAM policy
simulator allows
you to test policies
against resources
in your account
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is the IAM Policy Simulator?
• Test policies that are attached to IAM users, groups, or roles in your
AWS account.
• You will hear more about this later today!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is the IAM Policy Generator?
The AWS IAM Console
has a simple GUI that
helps you build your IAM
policies.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
AWS Identity Federation
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Common scenarios for IAM
• Most organizations will integrate with IAM using their own corporate
directory (federated users via IAM roles)
• IAM roles are also commonly used to provide granular AWS service
permissions for applications running on EC2 or Lambda
• IAM users are commonly used to provide access to AWS resources in
“break-glass” scenarios
• IAM managed policies should be favored over inline policies as they
can be updated in one place and apply to several entities
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM users vs. federated users
• IAM supports users managed in AWS’s identity management system
• Users managed outside of AWS in your corporate directory are
referred to as “federated users”
– Examples of corporate directories, include Microsoft Active Directory,
PingFederate, Okta Univeral Directory, etc.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What are IAM identity providers?
• IAM identity providers allow you to use identities managed outside of
AWS instead of creating IAM users in your AWS account
• You don’t have to create custom sign-in code or manage your own
identities
• This is helpful if your organization already has its own identity
system, such as a corporate user directory like Microsoft Active
Directory
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is SAML 2.0-based federation?
• SAML 2.0 is an open standard that many Identity Providers (IdPs) use
• This feature enables federated Single Sign-On (SSO), so users can log
into the AWS Management Console or call the AWS APIs without you
having to create an IAM user for everyone in your organization
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
What is AWS Security Token Service (STS)?
• The AWS Security Token Service (STS) is a web service that enables
you to request temporary, limited-privilege credentials for AWS
Identity and Access Management (IAM) users or for users that you
authenticate (federated users)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Ideas on identity & federation
• Do IAM users require a password or access key to call an AWS API?
– Access key, as passwords are only used to log into the AWS Management
Console
• Should code running on an EC2 instance use an access key or IAM role
to access DynamoDB?
– IAM role, as access keys can be challenging to manage
• Which IAM permission is more powerful, “iam:CreatePolicy” or
“iam:AttachRolePolicy”?
– iam:AttachRolePolicy, since you can escalate permissions by attaching any
policy to a role
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM Best Practices
• Don’t create or use account (root) access keys
• Use federated access if you have your own identity provider
• Create individual IAM users (don’t share)
• Use groups to assign permissions to IAM users
• Grant least privilege
• Configure a strong password policy for your users
• Enable MFA for privileged users
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
IAM Best Practices
• Use roles for applications that run on Amazon EC2 instances
• Delegate by using roles instead of by sharing credentials
• Rotate credentials regularly
• Remove unnecessary credentials
• Use policy conditions for extra security
• Monitor activity in your AWS account
• http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
More info:
https://aws.amazon.com/security
https://aws.amazon.com/compliance
@jeffscottlevine
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
Questions?
?
@jeffscottlevine
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
aws.amazon.com/activate
Everything and Anything Startups
Need to Get Started on AWS

More Related Content

What's hot

Getting Started with AWS Security
Getting Started with AWS SecurityGetting Started with AWS Security
Getting Started with AWS SecurityAmazon Web Services
 
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...Amazon Web Services
 
SID331_Architecting Security and Governance Across a Multi-Account Strategy
SID331_Architecting Security and Governance Across a Multi-Account StrategySID331_Architecting Security and Governance Across a Multi-Account Strategy
SID331_Architecting Security and Governance Across a Multi-Account StrategyAmazon Web Services
 
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)Amazon Web Services
 
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...Amazon Web Services
 
Achieving Continuous Compliance with CTP and AWS
Achieving Continuous Compliance with CTP and AWS Achieving Continuous Compliance with CTP and AWS
Achieving Continuous Compliance with CTP and AWS Amazon Web Services
 
Incident Response: Preparing and Simulating Threat Response
Incident Response: Preparing and Simulating Threat ResponseIncident Response: Preparing and Simulating Threat Response
Incident Response: Preparing and Simulating Threat ResponseAmazon Web Services
 
Data Protection in Transit and at Rest
Data Protection in Transit and at RestData Protection in Transit and at Rest
Data Protection in Transit and at RestAmazon Web Services
 
Enabling Compliance with GDPR on AWS.pdf
Enabling Compliance with GDPR on AWS.pdfEnabling Compliance with GDPR on AWS.pdf
Enabling Compliance with GDPR on AWS.pdfAmazon Web Services
 
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...Amazon Web Services
 
Achieving Compliance and Selling to Regulated Markets
Achieving Compliance and Selling to Regulated MarketsAchieving Compliance and Selling to Regulated Markets
Achieving Compliance and Selling to Regulated MarketsAmazon Web Services
 
TiVo: How to Scale New Products with a Data Lake on AWS and Qubole
 TiVo: How to Scale New Products with a Data Lake on AWS and Qubole TiVo: How to Scale New Products with a Data Lake on AWS and Qubole
TiVo: How to Scale New Products with a Data Lake on AWS and QuboleAmazon Web Services
 
Building an Automated Security Fabric in AWS
Building an Automated Security Fabric in AWSBuilding an Automated Security Fabric in AWS
Building an Automated Security Fabric in AWSAmazon Web Services
 
Advanced Techniques for Securing Web Applications
Advanced Techniques for Securing Web ApplicationsAdvanced Techniques for Securing Web Applications
Advanced Techniques for Securing Web ApplicationsAmazon Web Services
 
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 SecurityAmazon Web Services
 
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...Amazon Web Services
 
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...Amazon Web Services
 
AWS Cloud Security & Compliance Basics Webinar
AWS Cloud Security & Compliance Basics WebinarAWS Cloud Security & Compliance Basics Webinar
AWS Cloud Security & Compliance Basics WebinarAmazon Web Services
 

What's hot (20)

Getting Started with AWS Security
Getting Started with AWS SecurityGetting Started with AWS Security
Getting Started with AWS Security
 
AWS Security Fundamentals
AWS Security FundamentalsAWS Security Fundamentals
AWS Security Fundamentals
 
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...
A Practitioner's Guide to Securing Your Cloud (Like an Expert) (SEC203-R1) - ...
 
SID331_Architecting Security and Governance Across a Multi-Account Strategy
SID331_Architecting Security and Governance Across a Multi-Account StrategySID331_Architecting Security and Governance Across a Multi-Account Strategy
SID331_Architecting Security and Governance Across a Multi-Account Strategy
 
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)
Introduction to the Security Perspective of the Cloud Adoption Framework (CAF)
 
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...
Using AWS to Ingest, Store, Archive, Share and carry out Analysis of Video Co...
 
Achieving Continuous Compliance with CTP and AWS
Achieving Continuous Compliance with CTP and AWS Achieving Continuous Compliance with CTP and AWS
Achieving Continuous Compliance with CTP and AWS
 
Incident Response: Preparing and Simulating Threat Response
Incident Response: Preparing and Simulating Threat ResponseIncident Response: Preparing and Simulating Threat Response
Incident Response: Preparing and Simulating Threat Response
 
Data Protection in Transit and at Rest
Data Protection in Transit and at RestData Protection in Transit and at Rest
Data Protection in Transit and at Rest
 
Enabling Compliance with GDPR on AWS.pdf
Enabling Compliance with GDPR on AWS.pdfEnabling Compliance with GDPR on AWS.pdf
Enabling Compliance with GDPR on AWS.pdf
 
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...
Improve your Security Posture with AWS CloudFormation (DEV341-R2) - AWS re:In...
 
Achieving Compliance and Selling to Regulated Markets
Achieving Compliance and Selling to Regulated MarketsAchieving Compliance and Selling to Regulated Markets
Achieving Compliance and Selling to Regulated Markets
 
TiVo: How to Scale New Products with a Data Lake on AWS and Qubole
 TiVo: How to Scale New Products with a Data Lake on AWS and Qubole TiVo: How to Scale New Products with a Data Lake on AWS and Qubole
TiVo: How to Scale New Products with a Data Lake on AWS and Qubole
 
Building an Automated Security Fabric in AWS
Building an Automated Security Fabric in AWSBuilding an Automated Security Fabric in AWS
Building an Automated Security Fabric in AWS
 
Advanced Techniques for Securing Web Applications
Advanced Techniques for Securing Web ApplicationsAdvanced Techniques for Securing Web Applications
Advanced Techniques for Securing Web Applications
 
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
 
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...
Cloud Adoption Framework: Security Perspective - CAF Data Protection in Trans...
 
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...
Automated Solution for Deploying AWS Landing Zone (GPSWS407) - AWS re:Invent ...
 
Introduction to AWS Security
Introduction to AWS SecurityIntroduction to AWS Security
Introduction to AWS Security
 
AWS Cloud Security & Compliance Basics Webinar
AWS Cloud Security & Compliance Basics WebinarAWS Cloud Security & Compliance Basics Webinar
AWS Cloud Security & Compliance Basics Webinar
 

Similar to Foundations: Understanding the Critical Building Blocks of AWS Identity and Governance

Understanding the Critical Building Blocks of AWS Identity and Governance
Understanding the Critical Building Blocks of AWS Identity and GovernanceUnderstanding the Critical Building Blocks of AWS Identity and Governance
Understanding the Critical Building Blocks of AWS Identity and GovernanceAmazon Web 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...Amazon Web Services
 
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 SecurityAmazon Web Services
 
Identity Round Robin Workshop - Serverless Round: Security Week at the SF Loft
Identity Round Robin Workshop - Serverless Round: Security Week at the SF LoftIdentity Round Robin Workshop - Serverless Round: Security Week at the SF Loft
Identity Round Robin Workshop - Serverless Round: Security Week at the SF LoftAmazon Web Services
 
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018Amazon Web Services
 
AWSome Day Online Conference 2018 - Module 3
AWSome Day Online Conference 2018 - Module 3AWSome Day Online Conference 2018 - Module 3
AWSome Day Online Conference 2018 - Module 3Amazon Web Services
 
External Security Services Round: Security Week at the San Francisco Loft
External Security Services Round: Security Week at the San Francisco LoftExternal Security Services Round: Security Week at the San Francisco Loft
External Security Services Round: Security Week at the San Francisco LoftAmazon Web Services
 
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...Amazon Web Services
 
Deep dive - AWS security by design
Deep dive - AWS security by designDeep dive - AWS security by design
Deep dive - AWS security by designRichard Harvey
 
The Evolution of Identity and Access Management on AWS - AWS Online Tech Talks
The Evolution of Identity and Access Management on AWS - AWS Online Tech TalksThe Evolution of Identity and Access Management on AWS - AWS Online Tech Talks
The Evolution of Identity and Access Management on AWS - AWS Online Tech TalksAmazon Web Services
 
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...Amazon Web Services
 
Deep Dive - AWS Security by Design
Deep Dive - AWS Security by DesignDeep Dive - AWS Security by Design
Deep Dive - AWS Security by DesignAmazon Web Services
 
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...Amazon Web Services
 
Module 3 - AWSome Day Online Conference 2018
Module 3 - AWSome Day Online Conference 2018Module 3 - AWSome Day Online Conference 2018
Module 3 - AWSome Day Online Conference 2018Amazon Web Services
 
AWS Identity Access Management
AWS Identity Access ManagementAWS Identity Access Management
AWS Identity Access ManagementRichard Harvey
 
Identity and Access Management and Directory Services
Identity and Access Management and Directory ServicesIdentity and Access Management and Directory Services
Identity and Access Management and Directory ServicesAmazon Web Services
 
Evolving perimeters with guardrails, not gates: Improving developer agility -...
Evolving perimeters with guardrails, not gates: Improving developer agility -...Evolving perimeters with guardrails, not gates: Improving developer agility -...
Evolving perimeters with guardrails, not gates: Improving developer agility -...Amazon Web Services
 
How to Implement a Well-Architected Security Solution.pdf
How to Implement a Well-Architected Security Solution.pdfHow to Implement a Well-Architected Security Solution.pdf
How to Implement a Well-Architected Security Solution.pdfAmazon Web Services
 

Similar to Foundations: Understanding the Critical Building Blocks of AWS Identity and Governance (20)

Understanding the Critical Building Blocks of AWS Identity and Governance
Understanding the Critical Building Blocks of AWS Identity and GovernanceUnderstanding the Critical Building Blocks of AWS Identity and Governance
Understanding the Critical Building Blocks of AWS Identity and Governance
 
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...
 
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
 
Identity Round Robin Workshop - Serverless Round: Security Week at the SF Loft
Identity Round Robin Workshop - Serverless Round: Security Week at the SF LoftIdentity Round Robin Workshop - Serverless Round: Security Week at the SF Loft
Identity Round Robin Workshop - Serverless Round: Security Week at the SF Loft
 
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018
Mastering Identity at Every Layer of the Cake (SEC401-R1) - AWS re:Invent 2018
 
AWSome Day Online Conference 2018 - Module 3
AWSome Day Online Conference 2018 - Module 3AWSome Day Online Conference 2018 - Module 3
AWSome Day Online Conference 2018 - Module 3
 
External Security Services Round: Security Week at the San Francisco Loft
External Security Services Round: Security Week at the San Francisco LoftExternal Security Services Round: Security Week at the San Francisco Loft
External Security Services Round: Security Week at the San Francisco Loft
 
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
 
Deep dive into AWS IAM
Deep dive into AWS IAMDeep dive into AWS IAM
Deep dive into AWS IAM
 
Deep dive - AWS security by design
Deep dive - AWS security by designDeep dive - AWS security by design
Deep dive - AWS security by design
 
The Evolution of Identity and Access Management on AWS - AWS Online Tech Talks
The Evolution of Identity and Access Management on AWS - AWS Online Tech TalksThe Evolution of Identity and Access Management on AWS - AWS Online Tech Talks
The Evolution of Identity and Access Management on AWS - AWS Online Tech Talks
 
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...
Become an IAM Policy Master in 60 Minutes or Less (SEC316-R1) - AWS reInvent ...
 
Deep Dive - AWS Security by Design
Deep Dive - AWS Security by DesignDeep Dive - AWS Security by Design
Deep Dive - AWS Security by Design
 
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...
Module 3: Security, Architecting Best Practices, Pricing, Partner Solutions, ...
 
Module 3 - AWSome Day Online Conference 2018
Module 3 - AWSome Day Online Conference 2018Module 3 - AWSome Day Online Conference 2018
Module 3 - AWSome Day Online Conference 2018
 
AWS Identity Access Management
AWS Identity Access ManagementAWS Identity Access Management
AWS Identity Access Management
 
Identity and Access Management and Directory Services
Identity and Access Management and Directory ServicesIdentity and Access Management and Directory Services
Identity and Access Management and Directory Services
 
Evolving perimeters with guardrails, not gates: Improving developer agility -...
Evolving perimeters with guardrails, not gates: Improving developer agility -...Evolving perimeters with guardrails, not gates: Improving developer agility -...
Evolving perimeters with guardrails, not gates: Improving developer agility -...
 
How to Implement a Well-Architected Security Solution.pdf
How to Implement a Well-Architected Security Solution.pdfHow to Implement a Well-Architected Security Solution.pdf
How to Implement a Well-Architected Security Solution.pdf
 
Enterprise Security
Enterprise SecurityEnterprise Security
Enterprise Security
 

More from Amazon Web Services

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...Amazon Web Services
 
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...Amazon Web Services
 
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 FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
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 Amazon Web Services
 
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...Amazon Web Services
 
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...Amazon Web Services
 
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 WorkloadsAmazon Web Services
 
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 sfatareAmazon Web Services
 
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 NodeJSAmazon Web Services
 
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 webAmazon Web Services
 
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 sfatareAmazon 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 AWSAmazon 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 DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon 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
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon 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
 

Foundations: Understanding the Critical Building Blocks of AWS Identity and Governance

  • 1. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Foundations: Identity & Access Management in AWS Jeff Levine Security Specialist, Solutions Archiect AWS Solutions Architecture
  • 2. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Agenda • Overview of AWS Identity & Access Management • IAM Authentication & Authorization • AWS Identity Federation • Recap of Best Practices
  • 3. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Who Is This Jeff Levine Guy? • The first computer I used was an HP 3000 Series II • I have used keypunchers and card sorters. • My first programming language was FORTRAN. • I came to AWS in 2016. • I help customers with real world security issues. • I write blog posts and whitepapers. • I like to scuba dive!
  • 4. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Let’s understand the basics of scuba… (picture from scuba.com)
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved When things go wrong…. • When things go wrong, we need to remember our basic training. It can save you. • We need to regularly re-visit our basic training so we know how things work so that when something doesn’t work as expected, we can figure out why.
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved AWS Identity & Access Management IAM
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is IAM? • IAM is a preventive security control • What is a security control? – Any hardware, software, policy or procedure meant to govern access to IT resources • A preventive security control is one intended to thwart unwanted or unauthorized activity Directive Preventive Detective Responsive
  • 8. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is AWS IAM? • Create and manage AWS users, groups, and permissions to control access to AWS resources • Integrates with Microsoft Active Directory using SAML identity federation and AWS Directory Service • Roles can be created and assumed to control what operations can be performed by an entity or AWS service (e.g. EC2 instance)
  • 9. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Why use AWS IAM? • You can specify permissions to control which operations a user or role can perform on AWS resources • IAM service provides access to the AWS Management Console, AWS API, and AWS Command-Line Interface (CLI) Note: IAM does not provide authentication for your OS or application
  • 10. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Planes of access EC2 Control plane – AWS API (example: ec2:StartInstances) Data plane – VPC connection (example: SSH, RDP) Different: • Paths • Credentials • Protocols
  • 11. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Planes of access DynamoDB Control plane – AWS API (example: dynamodb:CreateTable) Data plane – AWS API (example: dynamodb:GetItem) Same: • Path • Credential • Protocol
  • 12. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM Users? • IAM users can be an individual, system, or application requiring access to AWS services • A user account consists of a unique name and security credentials such as a password, access key, and/or multi-factor authentication (MFA) • IAM users only need passwords when they access the AWS Management Console
  • 13. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM Groups? • IAM Groups are a way to assign permissions to logical and functional units of your organization • IAM Groups are a tool to help with operational efficiency – Bulk permissions management (scalable) – Easy to change permissions as individuals change teams (portable)
  • 14. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM Roles? • An IAM role is similar to a user, in that it is an AWS identity with permission policies that determine what the identity can and cannot do in AWS. • You can authorize roles to be assumed by humans, Amazon EC2 instances, custom code, or other AWS services.
  • 15. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM Authentication & Authorization
  • 16. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM Access Keys? • IAM access keys are used to make programmatic calls to AWS using the AWS Command Line Interface (CLI), the AWS SDKs, or direct HTTPS calls to the APIs for individual AWS services • Consists of an Access Key ID and a Secret Access Key • Example: – Access Key ID: AKIA3R7HGUSSI4BOW – Secret Access Key: MxQ4QSzT0NsnEO5VNCYjJo
  • 17. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is the signing process? • AWS Signature Version 4 is the process to add authentication information to AWS requests. – The AWS SDKs or CLI tools will construct, sign, and send requests for you, with the access keys you provide. – If you are constructing AWS API requests yourself, you will have to include code to sign the requests. • http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
  • 18. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM passwords? • IAM passwords are credentials used by IAM users to authenticate to the AWS Management Console. • A password policy can be configured for the AWS account • Alphanumeric and common special characters are allowed: ! @ # $ % ^ & * ( ) _ + - = [ ] { } | ‘
  • 19. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved When should I use 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
  • 20. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is an IAM principal? • IAM principal refers to a user, account, service, role, or other entity • In terms of evaluating authorization, a principal is defined as the entity that is allowed or denied access to a resource.
  • 21. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM policies? • IAM policies are JSON-based statements that define access control and permissions • IAM polices can be “inline” or “managed”
  • 22. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Example IAM policy { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::example_bucket" } }
  • 23. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved
  • 24. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Be careful of the consequences: { "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": “iam:*", "Resource": “*" } }
  • 25. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM Policies? • Inline policies are policies that you create and manage, and that are embedded directly into a single user, group, or role. • Managed policies are standalone policies that you can manage separately from the IAM users, groups, or roles to which they are attached – AWS managed policies – Customer managed polices
  • 26. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Choosing Inline 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
  • 27. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Choosing Inline vs Managed Policies • 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
  • 28. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are Resource-based policies? • To specify resource-based permissions, you attach an inline policy to a supported resource, such as an Amazon SNS topic, an Amazon S3 bucket, an AWS KMS key, or an Amazon Glacier vault. • Resource-based policies must specify who is allowed to access the resource, known as the Principal.
  • 29. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Policy structure Identity-based policy Resource-based policy { "Statement":[{ "Effect":"effect", "Principal":"principal", "Action":"action", "Resource":"arn", "Condition":{ "condition":{ "key":"value" } } } ] } { "Statement":[{ "Effect":"effect", "Principal":"principal", "Action":"action", "Resource":"arn", "Condition":{ "condition":{ "key":"value" } } } ] } { "Statement":[{ "Effect":"effect", "Action":"action", "Resource":"arn", "Condition":{ "condition":{ "key":"value" } } } ] } { "Statement":[{ "Effect":"effect", "Action":"action", "Resource":"arn", "Condition":{ "condition":{ "key":"value" } } } ] }
  • 30. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is the key difference? • With Identity-based Policies, the Principal is implicit. • With Resource-based Policies, the Principal is explicit.
  • 31. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM evaluation logic • By default, the decision is default deny • An allow overrides any default denies • An explicit deny overrides any allows • The order in which the policies are evaluated is not important
  • 32. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM Policy Evaluation Logic Final decision =“deny” (explicit deny) Yes Final decision =“allow” Yes No Is there an Allow? 4 Decision starts at Deny 1 Evaluate all applicable policies 2 Is there an explicit deny? 3 No Final decision =“deny” (default deny) 5 • AWS retrieves all policies associated with the user and resource. • Only policies that match the action and conditions are evaluated. If a policy statement has a deny, it trumps all other policy statements. Access is granted if there is an explicit allow and no deny. By default, an implicit (default) deny is returned.
  • 33. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Prevent privilege escalation • Any principal with full IAM permissions is effectively a super user, even if no other permissions have been granted. • Why? The principal can modify its own permissions at any time. • To prevent this, deny access to at least these IAM actions: – iam:AttachUserPolicy – iam:AttachGroupPolicy – iam:AttachRolePolicy – iam:PutUserPolicy – iam:PutGroupPolicy – iam:PutRolePolicy
  • 34. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is the IAM Policy Simulator? The IAM policy simulator allows you to test policies against resources in your account
  • 35. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is the IAM Policy Simulator? • Test policies that are attached to IAM users, groups, or roles in your AWS account. • You will hear more about this later today!
  • 36. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is the IAM Policy Generator? The AWS IAM Console has a simple GUI that helps you build your IAM policies.
  • 37. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved AWS Identity Federation
  • 38. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Common scenarios for IAM • Most organizations will integrate with IAM using their own corporate directory (federated users via IAM roles) • IAM roles are also commonly used to provide granular AWS service permissions for applications running on EC2 or Lambda • IAM users are commonly used to provide access to AWS resources in “break-glass” scenarios • IAM managed policies should be favored over inline policies as they can be updated in one place and apply to several entities
  • 39. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM users vs. federated users • IAM supports users managed in AWS’s identity management system • Users managed outside of AWS in your corporate directory are referred to as “federated users” – Examples of corporate directories, include Microsoft Active Directory, PingFederate, Okta Univeral Directory, etc.
  • 40. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What are IAM identity providers? • IAM identity providers allow you to use identities managed outside of AWS instead of creating IAM users in your AWS account • You don’t have to create custom sign-in code or manage your own identities • This is helpful if your organization already has its own identity system, such as a corporate user directory like Microsoft Active Directory
  • 41. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is SAML 2.0-based federation? • SAML 2.0 is an open standard that many Identity Providers (IdPs) use • This feature enables federated Single Sign-On (SSO), so users can log into the AWS Management Console or call the AWS APIs without you having to create an IAM user for everyone in your organization
  • 42. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved What is AWS Security Token Service (STS)? • The AWS Security Token Service (STS) is a web service that enables you to request temporary, limited-privilege credentials for AWS Identity and Access Management (IAM) users or for users that you authenticate (federated users)
  • 43. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Ideas on identity & federation • Do IAM users require a password or access key to call an AWS API? – Access key, as passwords are only used to log into the AWS Management Console • Should code running on an EC2 instance use an access key or IAM role to access DynamoDB? – IAM role, as access keys can be challenging to manage • Which IAM permission is more powerful, “iam:CreatePolicy” or “iam:AttachRolePolicy”? – iam:AttachRolePolicy, since you can escalate permissions by attaching any policy to a role
  • 44. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM Best Practices • Don’t create or use account (root) access keys • Use federated access if you have your own identity provider • Create individual IAM users (don’t share) • Use groups to assign permissions to IAM users • Grant least privilege • Configure a strong password policy for your users • Enable MFA for privileged users
  • 45. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved IAM Best Practices • Use roles for applications that run on Amazon EC2 instances • Delegate by using roles instead of by sharing credentials • Rotate credentials regularly • Remove unnecessary credentials • Use policy conditions for extra security • Monitor activity in your AWS account • http://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
  • 46. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved More info: https://aws.amazon.com/security https://aws.amazon.com/compliance @jeffscottlevine
  • 47. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved Questions? ? @jeffscottlevine
  • 48. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved aws.amazon.com/activate Everything and Anything Startups Need to Get Started on AWS