SlideShare une entreprise Scribd logo
1  sur  35
Understand the technology used to delegate access
•   Sessions and the AWS Security Token Service
•   Roles and assumed-role sessions
•   Federated sessions
•   The differences in session types and when to use what



Use cases we’ll cover:
• Cross Account Access
• AWS API Federation
• AWS Console Federation
Sessions & the AWS Security Token Service
Sessions allow delegating temporary access to your AWS account

Use cases being covered in this talk:
 • Cross Account Access
 • Inbound AWS federation
   • AWS service API
   • AWS Management Console

Other use cases not covered today:
 • Mobile and browser-based applications
 • Consumer applications with unlimited users
 • MFA Protected API Access
Session

Access Key Id
Secret Access Key
Session Token
Expiration
Session

Access Key Id
Secret Access Key   Temporary security
                       credentials
Session Token
Expiration
Session

Access Key Id
Secret Access Key
Session Token
Expiration
Session

Access Key Id
Secret Access Key
Session Token
Expiration
Roles and assumed-role sessions
How to define who can assume the role using the console

{ "Statement": [
  {
   "Effect": "Allow",
   "Action": “sts:AssumeRole",
   "Resource": "arn:aws:iam::111122223333:role/MyRole"
  }
 ]
}

 Entity can assume MyRole under account 111122223333
IAM Team Account             Permissions assigned to s3-role
                               My AWS Account                                             Acct ID: 111122223333
                                Acct ID: 123456789012                                                                 { "Statement": [
                                                            Authenticate with                                          {
                                                            Jeff’s access keys           STS
                                                                                                                         "Effect": "Allow",
                                                                                                                         "Action": “s3:*",
                                                                                                                         "Resource": "*"
                                                                                                                        }
                                        Jeff                                                     s3-role               ]
                                                           Get temporary security
                                                                                                                      }
                                                           credentials from s3-role




                                                            Call AWS APIs using
                                                             temporary security
                                                                 credentials
{ "Statement": [                                                                      { "Statement": [
  {                                                                                     {
   "Effect": "Allow",                                                                    "Effect":"Allow",
   "Action": “sts:AssumeRole",                                                           "Principal":{"AWS":"arn:aws:iam::123456789012:root"},
   "Resource": "arn:aws:iam::111122223333:role/s3-role"                                  "Action":"sts:AssumeRole"
  }                                                                                     }
 ]                                                                                     ]
}                                                                                     }
         Policy assigned to Jeff granting him permission                                            Policy assigned to s3-role defining
                 to assume s3-role in account B                                                  who (trusted entities) can assume the role
Assumed-Role Session – Code Sample
public static Credentials getAssumeRoleSession(String roleArn, String AccessKey, String SecretKey )
       {
           Credentials sessionCredentials;
           AmazonSecurityTokenServiceClient client = new AmazonSecurityTokenServiceClient(
                                                         Accesskey, GetSecretkey,
                                                         new AmazonSecurityTokenServiceConfig());
           // Store the attributes and request a new AssumeRole session (temporary security credentials)
           AssumeRoleRequest request = new AssumeRoleRequest
           {
               DurationSeconds = 3600,
               RoleArn = roleArn,
               RoleSessionName = "S3BucketBrowser"
           };
           AssumeRoleResponse startSessionResponse = client.AssumeRole(request);
           if (startSessionResponse != null) // Check for valid security credentials or null
           {
               AssumeRoleResult startSessionResult = startSessionResponse.AssumeRoleResult;
               sessionCredentials = startSessionResult.Credentials;
               return sessionCredentials;
           }
           else
           {
               throw new Exception("S3 Browser :: Error in retrieving temporary security creds, received NULL");
           }
       }
Let’s talk about federation
Customer (IdP)                                                                    AWS Cloud (Relying Party)

                                                                  Get Federation
                                            4                     Token Request

            2                                          Get Federation Token
                                                                                   STS
                                                            Response           5
                              Federation Proxy
                                                          •   Access Key
                                                          •   Secret Key
                                                          •   Session Token
                3
                                                                                            S3 Bucket         Amazon          Amazon
                                                                                           with Objects      DynamoDB          EC2
Directory                               6    Receive
                                             Token
                                                                                                          AWS Resources


                         Request
                          Token
                                   1                                                           • Uses a set of IAM user credentials to call
                                                              7   Call AWS APIs                  GetFederatedTokenRequest()
                                                                                               • IAM user permissions needs to be the union
     User                              APP                                                       of all federated user permissions
   Application                                                                      Federation • Proxy needs to securely store these
                                                                                      Proxy      privileged credentials
Get Federated Session – Code Sample
public Credentials GetSecurityToken(string userName, string Accesskey, string Secretkey)
   {
       Credentials sessionCredentials;
       AmazonSecurityTokenServiceConfig config = new AmazonSecurityTokenServiceConfig();
       AmazonSecurityTokenServiceClient client = new AmazonSecurityTokenServiceClient(Accesskey,Secretkey, config);
       string policy = Utilities.BuildAWSPolicy(userName);           // Retrieve the AWS Policy from Active Directory

            GetFederationTokenRequest request = new GetFederationTokenRequest
                                                       {
                                                             DurationSeconds = Utilities.GetSessionDuration(),
                                                             Name = awsUsername,
                                                             Policy = policy
                                                       };
            GetFederationTokenResponse startSessionResponse = client.GetFederationToken(request);

            if (startSessionResponse != null) // Check the result returned, ex: Valid security credentials or null?
             {
                 GetFederationTokenResult startSessionResult = startSessionResponse.GetFederationTokenResult;
                 sessionCredentials = startSessionResult.Credentials;
                 return sessionCredentials;
               }
            else
               {
                     throw new Exception("FederationProxy :: Error in retrieving temporary security creds, received NULL");
              }
    }
Permissions assigned to s3-role
                                                                                          Acct ID: 111122223333
                                                                                                                      {    "Statement": [
                                                                   Authenticate with                                        {
                                                                     access keys         STS
                                                                                                                              "Effect": "Allow",
                                                                                                                              "Action": "s3:*",
                                                                                                                              "Resource": "*"
                                                                                                                            }
                                                                                                 s3-role                  ]
                                                                Get temporary
                                Proxy Server                                                                          }
                                                              security credentials
                                 IAM User


                                                     login using temporary security      AWS Management Console
                                                               credentials


   Policy assigned to Proxy granting permission to ListRoles and                               Policy assigned to s3role defining who can
                     AssumeRoles for all roles                                                              assume the role

                                                                                  {"Statement": {
{ "Statement": [
                                                                                      "Principal": {"AWS":"arn:aws:iam::111122223333:root"},
  {
                                                                                      "Condition": {
   "Effect": "Allow",
                                                                                         "StringEquals": {"sts:externalId": “{SID1234…}"}
   "Action": ["iam:ListRoles","sts:AssumeRole"],
                                                                                      },
   "Resource": "arn:aws:iam::1111222233334444:role/*"
                                                                                      "Effect": "Allow",
  }
                                                                                      "Action": ["sts:AssumeRole"]
 ]
                                                                                    }
}
                                                                                  }
Customer (IdP)
                                                      List RolesResponse       5                        AWS Cloud (Relying Party)
                                                         List RolesRequest
                                              4
                                                       AssumeRole Request

       2
                                              7
                                                      Assume Role Response
                                                                                       STS
                       6         Federation              Temp Credentials          8
                  Create combo                             •   Access Key
                                   proxy
                       box                                 •   Secret Key
                                                           •   Session Token


              3                                   9   Generate URL
                                                                                                    AWS
                                                                 10          Redirect to         Management
                                                                              Console             Console
Corporate
directory

                                                                                                      • Uses a set of IAM user credentials to make
                           1                                                                            AssumeRoleRequest()
                     Browse to URL                                                                    • IAM user permissions only need to be able
                                                                                                        to call ListRoles & assume role
                                                                                           Federation • Proxy needs to securely store these
  Browser                                                                                    proxy      credentials
  interface
Console Federation – Code Sample
public string getSignInURL(Credentials federatedCredentials, String issuerURL, String consoleURL, String signInURL )
          {
            // Create the sign-in token using temporary credentials, Access Key ID, Secret Access Key, and security token.
            String sessionJson = "{" +
                                   ""sessionId":"" + federatedCredentials.AccessKeyId + ""," +
                                   ""sessionKey":"" + federatedCredentials.SecretAccessKey + ""," +
                                   ""sessionToken":"" + federatedCredentials.SessionToken + """ +
                                   "}";
            String getSigninTokenURL = signInURL + "?Action=getSigninToken" +
                                                   "&SessionType=json&Session=" +
                                                   HttpUtility.UrlEncode(sessionJson, Encoding.UTF8);
            WebRequest Request = WebRequest.Create(getSigninTokenURL);
            HttpWebResponse WebResponse = (HttpWebResponse)Request.GetResponse();
            Stream data = WebResponse.GetResponseStream();
            StreamReader reader = new StreamReader(data);
            String Response = reader.ReadToEnd();
            String[] session_encrypted = Response.Split(new Char[] { ':', '"' });
            String signinToken = session_encrypted[4];
            String signinTokenParameter = "&SigninToken=" + HttpUtility.UrlEncode(signinToken, Encoding.UTF8);
            // The issuer parameter is optional, but recommended. Use it to direct users
            // to your sign-in page when their session expires.
            String issuer_param = "&Issuer=" + HttpUtility.UrlEncode(issuerURL, Encoding.UTF8);
            String destination_param = "&Destination=" + HttpUtility.UrlEncode(consoleURL, Encoding.UTF8);
            String loginURL = signInURL + "?Action=login" + signinTokenParameter + issuer_param + destination_param;
            return loginURL;
        }
Choosing the right session type
Federated sessions   Assumed-role sessions
Permissions                  Example

            Unrestricted access to all   Action: “*”
  AWS                                    Effect: Allow
            enabled services and
 account    resources
                                         Resource: “*”
                                         (implicit)


                                         Action: [“s3:*”,”sts:Get*”]
            Access restricted by group
IAM users   and user policies
                                         Effect: Allow
                                         Resource: “*”


            Access restricted by         Action: [“s3:Get*”]
Federated   generating identity &        Effect: Allow
 sessions   scoped further by policies   Resource:
            used to generate request     “arn:aws:s3:::mybucket/*”


Assumed-    Access restricted by role
                                         Action: [“ddb:*”]
            assumed & scoped further
   role     by policies used to
                                         Effect: Allow
                                         Resource:“*”
sessions    generate request
• Simple DB
•   http://aws.amazon.com/iam

•   https:// forums.aws.amazon.com/forum.jspa?forumID=76

•   http://aws.amazon.com/documentation/iam/

•   http://aws.amazon.com/code/1288653099190193

•   http://aws.amazon.com/code/TBD

•   http://aws.amazon.com/code/7351543942956566
Code     Session                                               Time
SEC101   A Guided Tour of AWS Identity and Access Management   Wednesday 11/28 2.05pm
SEC302   Delegating Access to Your AWS Environment             Wednesday 11/28 3.25pm
MBL302   Solving Common Mobile Use Cases with the AWS Mobile   Wednesday 11/28 3.25pm
         SDKs
SEC303   TOP 10 IAM Best Practices                             Thursday 11/29 3pm
We are sincerely eager to
 hear your feedback on this
presentation and on re:Invent.

 Please fill out an evaluation
   form when you have a
            chance.

Contenu connexe

Tendances

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...Amazon Web Services
 
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Amazon Web Services
 
Windsor AWS UG Deep dive IAM 2 - no json101
Windsor AWS UG   Deep dive IAM 2 - no json101Windsor AWS UG   Deep dive IAM 2 - no json101
Windsor AWS UG Deep dive IAM 2 - no json101Goran Karmisevic
 
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 byJohn Varghese
 
AWS IAM policies in plain english
AWS IAM policies in plain english AWS IAM policies in plain english
AWS IAM policies in plain english Bogdan Naydenov
 
Introduction to Identity and Access Management (IAM)
Introduction to Identity and Access Management (IAM)Introduction to Identity and Access Management (IAM)
Introduction to Identity and Access Management (IAM)Amazon Web Services
 
(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 ByAmazon Web Services
 
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...Amazon Web Services
 
How to use IAM roles grant access to AWS
How to use IAM roles grant access to AWSHow to use IAM roles grant access to AWS
How to use IAM roles grant access to AWSAmazon Web Services
 
AWS Twin Cities Meetup - IAM Deep Dive
AWS Twin Cities Meetup - IAM Deep DiveAWS Twin Cities Meetup - IAM Deep Dive
AWS Twin Cities Meetup - IAM Deep DiveAdam Fokken
 
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017Amazon Web Services
 
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014Amazon Web Services
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web ServicesBrett Gillett
 
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014Amazon Web Services
 
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...Amazon Web Services
 
Mastering Access Control Policies
Mastering Access Control PoliciesMastering Access Control Policies
Mastering Access Control PoliciesAmazon Web Services
 

Tendances (20)

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...
 
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
 
Windsor AWS UG Deep dive IAM 2 - no json101
Windsor AWS UG   Deep dive IAM 2 - no json101Windsor AWS UG   Deep dive IAM 2 - no json101
Windsor AWS UG Deep dive IAM 2 - no json101
 
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
 
AWS IAM policies in plain english
AWS IAM policies in plain english AWS IAM policies in plain english
AWS IAM policies in plain english
 
AWS IAM Introduction
AWS IAM IntroductionAWS IAM Introduction
AWS IAM Introduction
 
Introduction to Identity and Access Management (IAM)
Introduction to Identity and Access Management (IAM)Introduction to Identity and Access Management (IAM)
Introduction to Identity and Access Management (IAM)
 
Federation
FederationFederation
Federation
 
(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
 
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...
Secure Amazon EC2 Environment with AWS IAM & Resource-Based Permissions (CPN2...
 
How to use IAM roles grant access to AWS
How to use IAM roles grant access to AWSHow to use IAM roles grant access to AWS
How to use IAM roles grant access to AWS
 
AWS Twin Cities Meetup - IAM Deep Dive
AWS Twin Cities Meetup - IAM Deep DiveAWS Twin Cities Meetup - IAM Deep Dive
AWS Twin Cities Meetup - IAM Deep Dive
 
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017
Becoming an AWS Policy Ninja using AWS IAM - AWS Summit Tel Aviv 2017
 
IAM Best Practices
IAM Best PracticesIAM Best Practices
IAM Best Practices
 
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
(SEC302) Delegating Access to Your AWS Environment | AWS re:Invent 2014
 
IAM Introduction
IAM IntroductionIAM Introduction
IAM Introduction
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web Services
 
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014
(SEC403) Building AWS Partner Applications Using IAM Roles | AWS re:Invent 2014
 
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...
AWS re:Invent 2016: Become an AWS IAM Policy Ninja in 60 Minutes or Less (SAC...
 
Mastering Access Control Policies
Mastering Access Control PoliciesMastering Access Control Policies
Mastering Access Control Policies
 

En vedette

SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...
SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...
SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...Amazon Web Services
 
Improving your Time to Market with AWS
Improving your Time to Market with AWSImproving your Time to Market with AWS
Improving your Time to Market with AWSAmazon Web Services
 
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com Amazon Web Services
 
City of Melbourne Keynote Sydney Customer Appreciation Day
City of Melbourne Keynote Sydney Customer Appreciation DayCity of Melbourne Keynote Sydney Customer Appreciation Day
City of Melbourne Keynote Sydney Customer Appreciation DayAmazon Web Services
 
AWS Canberra WWPS Summit 2013 - Big Data with AWS
AWS Canberra WWPS Summit 2013 - Big Data with AWSAWS Canberra WWPS Summit 2013 - Big Data with AWS
AWS Canberra WWPS Summit 2013 - Big Data with AWSAmazon Web Services
 
AWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAmazon Web Services
 
AWS Customer Case Study - Tellybug
AWS Customer Case Study - TellybugAWS Customer Case Study - Tellybug
AWS Customer Case Study - TellybugAmazon Web Services
 
AWS Sydney Summit 2013 - Your First Week with Amazon EC2
AWS Sydney Summit 2013 - Your First Week with Amazon EC2AWS Sydney Summit 2013 - Your First Week with Amazon EC2
AWS Sydney Summit 2013 - Your First Week with Amazon EC2Amazon Web Services
 
AWS Summit 2013 | Singapore - Understanding Databases Options
AWS Summit 2013 | Singapore - Understanding Databases OptionsAWS Summit 2013 | Singapore - Understanding Databases Options
AWS Summit 2013 | Singapore - Understanding Databases OptionsAmazon Web Services
 
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...Amazon Web Services
 
AWS Total Cost of Ownership Hong Kong and Taiwan
AWS Total Cost of Ownership Hong Kong and TaiwanAWS Total Cost of Ownership Hong Kong and Taiwan
AWS Total Cost of Ownership Hong Kong and TaiwanAmazon Web Services
 
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012Amazon Web Services
 
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter Kemps
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter KempsAWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter Kemps
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter KempsAmazon Web Services
 
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAmazon Web Services
 
Aws webcast - Scaling on AWS 13 08-20
Aws webcast - Scaling on AWS 13 08-20Aws webcast - Scaling on AWS 13 08-20
Aws webcast - Scaling on AWS 13 08-20Amazon Web Services
 
Journey Through the AWS Cloud; Disaster Recovery
 Journey Through the AWS Cloud; Disaster Recovery Journey Through the AWS Cloud; Disaster Recovery
Journey Through the AWS Cloud; Disaster RecoveryAmazon Web Services
 
AWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWSAWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWSAmazon Web Services
 
AWS Partner Day London - June 11th 2013
AWS Partner Day London -  June 11th 2013  AWS Partner Day London -  June 11th 2013
AWS Partner Day London - June 11th 2013 Amazon Web Services
 
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ Anh
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ AnhSlide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ Anh
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ AnhLuong Trung Thanh
 
Connect2016 Shipping Domino
Connect2016 Shipping DominoConnect2016 Shipping Domino
Connect2016 Shipping DominoFactor-y S.r.l.
 

En vedette (20)

SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...
SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...
SEC303 Top 10 AWS Identity and Access Management Best Practices - AWS re:Inve...
 
Improving your Time to Market with AWS
Improving your Time to Market with AWSImproving your Time to Market with AWS
Improving your Time to Market with AWS
 
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com
AWS Enterprise Summit London 2013 - Ian Page - funkypigeon.com
 
City of Melbourne Keynote Sydney Customer Appreciation Day
City of Melbourne Keynote Sydney Customer Appreciation DayCity of Melbourne Keynote Sydney Customer Appreciation Day
City of Melbourne Keynote Sydney Customer Appreciation Day
 
AWS Canberra WWPS Summit 2013 - Big Data with AWS
AWS Canberra WWPS Summit 2013 - Big Data with AWSAWS Canberra WWPS Summit 2013 - Big Data with AWS
AWS Canberra WWPS Summit 2013 - Big Data with AWS
 
AWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon Redshift
 
AWS Customer Case Study - Tellybug
AWS Customer Case Study - TellybugAWS Customer Case Study - Tellybug
AWS Customer Case Study - Tellybug
 
AWS Sydney Summit 2013 - Your First Week with Amazon EC2
AWS Sydney Summit 2013 - Your First Week with Amazon EC2AWS Sydney Summit 2013 - Your First Week with Amazon EC2
AWS Sydney Summit 2013 - Your First Week with Amazon EC2
 
AWS Summit 2013 | Singapore - Understanding Databases Options
AWS Summit 2013 | Singapore - Understanding Databases OptionsAWS Summit 2013 | Singapore - Understanding Databases Options
AWS Summit 2013 | Singapore - Understanding Databases Options
 
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...
AWS Cloud Kata 2013 | Singapore - Building your 'Minimum Viable Product' (MVP...
 
AWS Total Cost of Ownership Hong Kong and Taiwan
AWS Total Cost of Ownership Hong Kong and TaiwanAWS Total Cost of Ownership Hong Kong and Taiwan
AWS Total Cost of Ownership Hong Kong and Taiwan
 
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012
ENT302 Deploying Microsoft Exchange and SharePoint on AWS - AWS re: Invent 2012
 
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter Kemps
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter KempsAWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter Kemps
AWS Summit 2013 | India - Running Lean with Optimized Architecture, Pieter Kemps
 
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the CloudAWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
AWS Sydney Summit 2013 - Scalable Media Processing on the Cloud
 
Aws webcast - Scaling on AWS 13 08-20
Aws webcast - Scaling on AWS 13 08-20Aws webcast - Scaling on AWS 13 08-20
Aws webcast - Scaling on AWS 13 08-20
 
Journey Through the AWS Cloud; Disaster Recovery
 Journey Through the AWS Cloud; Disaster Recovery Journey Through the AWS Cloud; Disaster Recovery
Journey Through the AWS Cloud; Disaster Recovery
 
AWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWSAWS 201 - A Walk through the AWS Cloud: What's New with AWS
AWS 201 - A Walk through the AWS Cloud: What's New with AWS
 
AWS Partner Day London - June 11th 2013
AWS Partner Day London -  June 11th 2013  AWS Partner Day London -  June 11th 2013
AWS Partner Day London - June 11th 2013
 
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ Anh
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ AnhSlide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ Anh
Slide kinh nghiệm vận hành Cloud trên Amazon - Huỳnh Kỳ Anh
 
Connect2016 Shipping Domino
Connect2016 Shipping DominoConnect2016 Shipping Domino
Connect2016 Shipping Domino
 

Similaire à SEC302 Delegating Access to Your AWS Environment - AWS re: Invent 2012

Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...
Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...
Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...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
 
Amazon Web Services Security
Amazon Web Services SecurityAmazon Web Services Security
Amazon Web Services SecurityJason Chan
 
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014Amazon Web Services
 
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014Amazon Web Services
 
iOS Keychain by 흰, 민디
iOS Keychain by 흰, 민디iOS Keychain by 흰, 민디
iOS Keychain by 흰, 민디MINJICHO20
 
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...Amazon Web Services
 
Alex Casalboni - Configuration management and service discovery - Codemotion ...
Alex Casalboni - Configuration management and service discovery - Codemotion ...Alex Casalboni - Configuration management and service discovery - Codemotion ...
Alex Casalboni - Configuration management and service discovery - Codemotion ...Codemotion
 
DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring Amazon Web Services
 
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012Amazon Web Services
 
User Authentication and Cloud Authorization in the Galaxy project: https://do...
User Authentication and Cloud Authorization in the Galaxy project: https://do...User Authentication and Cloud Authorization in the Galaxy project: https://do...
User Authentication and Cloud Authorization in the Galaxy project: https://do...Vahid Jalili
 
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018Martijn van Dongen
 
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...Amazon Web Services
 
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)Amazon Web Services
 
Securing your Pulsar Cluster with Vault_Chris Kellogg
Securing your Pulsar Cluster with Vault_Chris KelloggSecuring your Pulsar Cluster with Vault_Chris Kellogg
Securing your Pulsar Cluster with Vault_Chris KelloggStreamNative
 
AWS Cyber Security Best Practices
AWS Cyber Security Best PracticesAWS Cyber Security Best Practices
AWS Cyber Security Best PracticesDoiT International
 
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...Amazon Web Services
 
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage Management
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage ManagementSTG311_Deep Dive on Amazon S3 & Amazon Glacier Storage Management
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage ManagementAmazon Web Services
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfChristopher Doman
 

Similaire à SEC302 Delegating Access to Your AWS Environment - AWS re: Invent 2012 (20)

Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...
Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...
Unleash the Power of Temporary AWS Credentials (a.k.a. IAM roles) (SEC390-R1)...
 
AWS Java SDK @ scale
AWS Java SDK @ scaleAWS Java SDK @ scale
AWS Java SDK @ scale
 
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
 
Amazon Web Services Security
Amazon Web Services SecurityAmazon Web Services Security
Amazon Web Services Security
 
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
 
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
(SEC402) Intrusion Detection in the Cloud | AWS re:Invent 2014
 
iOS Keychain by 흰, 민디
iOS Keychain by 흰, 민디iOS Keychain by 흰, 민디
iOS Keychain by 흰, 민디
 
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
GPSTEC323-SaaS and OpenID Connect The Secret Sauce Multi-Tenant Identity and ...
 
Alex Casalboni - Configuration management and service discovery - Codemotion ...
Alex Casalboni - Configuration management and service discovery - Codemotion ...Alex Casalboni - Configuration management and service discovery - Codemotion ...
Alex Casalboni - Configuration management and service discovery - Codemotion ...
 
DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring DevOps for the Enterprise: Automated Testing and Monitoring
DevOps for the Enterprise: Automated Testing and Monitoring
 
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012
MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012
 
User Authentication and Cloud Authorization in the Galaxy project: https://do...
User Authentication and Cloud Authorization in the Galaxy project: https://do...User Authentication and Cloud Authorization in the Galaxy project: https://do...
User Authentication and Cloud Authorization in the Galaxy project: https://do...
 
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018
CloudFormation techniques from the Dutch trenches (DVC07) - AWS re:Invent 2018
 
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...
Don’t Let SFTP Weigh Down Your Migration to the Cloud (STG381-R1) - AWS re:In...
 
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)
 
Securing your Pulsar Cluster with Vault_Chris Kellogg
Securing your Pulsar Cluster with Vault_Chris KelloggSecuring your Pulsar Cluster with Vault_Chris Kellogg
Securing your Pulsar Cluster with Vault_Chris Kellogg
 
AWS Cyber Security Best Practices
AWS Cyber Security Best PracticesAWS Cyber Security Best Practices
AWS Cyber Security Best Practices
 
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...
Deep Dive on Amazon S3 & Amazon Glacier Storage Management - STG311 - re:Inve...
 
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage Management
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage ManagementSTG311_Deep Dive on Amazon S3 & Amazon Glacier Storage Management
STG311_Deep Dive on Amazon S3 & Amazon Glacier Storage Management
 
AWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdfAWS Incident Response Cheat Sheet.pdf
AWS Incident Response Cheat Sheet.pdf
 

Plus de 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
 

Plus de Amazon Web Services (20)

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

SEC302 Delegating Access to Your AWS Environment - AWS re: Invent 2012

  • 1.
  • 2. Understand the technology used to delegate access • Sessions and the AWS Security Token Service • Roles and assumed-role sessions • Federated sessions • The differences in session types and when to use what Use cases we’ll cover: • Cross Account Access • AWS API Federation • AWS Console Federation
  • 3.
  • 4. Sessions & the AWS Security Token Service
  • 5. Sessions allow delegating temporary access to your AWS account Use cases being covered in this talk: • Cross Account Access • Inbound AWS federation • AWS service API • AWS Management Console Other use cases not covered today: • Mobile and browser-based applications • Consumer applications with unlimited users • MFA Protected API Access
  • 6. Session Access Key Id Secret Access Key Session Token Expiration
  • 7. Session Access Key Id Secret Access Key Temporary security credentials Session Token Expiration
  • 8. Session Access Key Id Secret Access Key Session Token Expiration
  • 9. Session Access Key Id Secret Access Key Session Token Expiration
  • 11.
  • 12.
  • 13.
  • 14. How to define who can assume the role using the console { "Statement": [ { "Effect": "Allow", "Action": “sts:AssumeRole", "Resource": "arn:aws:iam::111122223333:role/MyRole" } ] } Entity can assume MyRole under account 111122223333
  • 15. IAM Team Account Permissions assigned to s3-role My AWS Account Acct ID: 111122223333 Acct ID: 123456789012 { "Statement": [ Authenticate with { Jeff’s access keys STS "Effect": "Allow", "Action": “s3:*", "Resource": "*" } Jeff s3-role ] Get temporary security } credentials from s3-role Call AWS APIs using temporary security credentials { "Statement": [ { "Statement": [ { { "Effect": "Allow", "Effect":"Allow", "Action": “sts:AssumeRole", "Principal":{"AWS":"arn:aws:iam::123456789012:root"}, "Resource": "arn:aws:iam::111122223333:role/s3-role" "Action":"sts:AssumeRole" } } ] ] } } Policy assigned to Jeff granting him permission Policy assigned to s3-role defining to assume s3-role in account B who (trusted entities) can assume the role
  • 16.
  • 17. Assumed-Role Session – Code Sample public static Credentials getAssumeRoleSession(String roleArn, String AccessKey, String SecretKey ) { Credentials sessionCredentials; AmazonSecurityTokenServiceClient client = new AmazonSecurityTokenServiceClient( Accesskey, GetSecretkey, new AmazonSecurityTokenServiceConfig()); // Store the attributes and request a new AssumeRole session (temporary security credentials) AssumeRoleRequest request = new AssumeRoleRequest { DurationSeconds = 3600, RoleArn = roleArn, RoleSessionName = "S3BucketBrowser" }; AssumeRoleResponse startSessionResponse = client.AssumeRole(request); if (startSessionResponse != null) // Check for valid security credentials or null { AssumeRoleResult startSessionResult = startSessionResponse.AssumeRoleResult; sessionCredentials = startSessionResult.Credentials; return sessionCredentials; } else { throw new Exception("S3 Browser :: Error in retrieving temporary security creds, received NULL"); } }
  • 18. Let’s talk about federation
  • 19.
  • 20. Customer (IdP) AWS Cloud (Relying Party) Get Federation 4 Token Request 2 Get Federation Token STS Response 5 Federation Proxy • Access Key • Secret Key • Session Token 3 S3 Bucket Amazon Amazon with Objects DynamoDB EC2 Directory 6 Receive Token AWS Resources Request Token 1 • Uses a set of IAM user credentials to call 7 Call AWS APIs GetFederatedTokenRequest() • IAM user permissions needs to be the union User APP of all federated user permissions Application Federation • Proxy needs to securely store these Proxy privileged credentials
  • 21.
  • 22. Get Federated Session – Code Sample public Credentials GetSecurityToken(string userName, string Accesskey, string Secretkey) { Credentials sessionCredentials; AmazonSecurityTokenServiceConfig config = new AmazonSecurityTokenServiceConfig(); AmazonSecurityTokenServiceClient client = new AmazonSecurityTokenServiceClient(Accesskey,Secretkey, config); string policy = Utilities.BuildAWSPolicy(userName); // Retrieve the AWS Policy from Active Directory GetFederationTokenRequest request = new GetFederationTokenRequest { DurationSeconds = Utilities.GetSessionDuration(), Name = awsUsername, Policy = policy }; GetFederationTokenResponse startSessionResponse = client.GetFederationToken(request); if (startSessionResponse != null) // Check the result returned, ex: Valid security credentials or null? { GetFederationTokenResult startSessionResult = startSessionResponse.GetFederationTokenResult; sessionCredentials = startSessionResult.Credentials; return sessionCredentials; } else { throw new Exception("FederationProxy :: Error in retrieving temporary security creds, received NULL"); } }
  • 23.
  • 24. Permissions assigned to s3-role Acct ID: 111122223333 { "Statement": [ Authenticate with { access keys STS "Effect": "Allow", "Action": "s3:*", "Resource": "*" } s3-role ] Get temporary Proxy Server } security credentials IAM User login using temporary security AWS Management Console credentials Policy assigned to Proxy granting permission to ListRoles and Policy assigned to s3role defining who can AssumeRoles for all roles assume the role {"Statement": { { "Statement": [ "Principal": {"AWS":"arn:aws:iam::111122223333:root"}, { "Condition": { "Effect": "Allow", "StringEquals": {"sts:externalId": “{SID1234…}"} "Action": ["iam:ListRoles","sts:AssumeRole"], }, "Resource": "arn:aws:iam::1111222233334444:role/*" "Effect": "Allow", } "Action": ["sts:AssumeRole"] ] } } }
  • 25. Customer (IdP) List RolesResponse 5 AWS Cloud (Relying Party) List RolesRequest 4 AssumeRole Request 2 7 Assume Role Response STS 6 Federation Temp Credentials 8 Create combo • Access Key proxy box • Secret Key • Session Token 3 9 Generate URL AWS 10 Redirect to Management Console Console Corporate directory • Uses a set of IAM user credentials to make 1 AssumeRoleRequest() Browse to URL • IAM user permissions only need to be able to call ListRoles & assume role Federation • Proxy needs to securely store these Browser proxy credentials interface
  • 26.
  • 27. Console Federation – Code Sample public string getSignInURL(Credentials federatedCredentials, String issuerURL, String consoleURL, String signInURL ) { // Create the sign-in token using temporary credentials, Access Key ID, Secret Access Key, and security token. String sessionJson = "{" + ""sessionId":"" + federatedCredentials.AccessKeyId + ""," + ""sessionKey":"" + federatedCredentials.SecretAccessKey + ""," + ""sessionToken":"" + federatedCredentials.SessionToken + """ + "}"; String getSigninTokenURL = signInURL + "?Action=getSigninToken" + "&SessionType=json&Session=" + HttpUtility.UrlEncode(sessionJson, Encoding.UTF8); WebRequest Request = WebRequest.Create(getSigninTokenURL); HttpWebResponse WebResponse = (HttpWebResponse)Request.GetResponse(); Stream data = WebResponse.GetResponseStream(); StreamReader reader = new StreamReader(data); String Response = reader.ReadToEnd(); String[] session_encrypted = Response.Split(new Char[] { ':', '"' }); String signinToken = session_encrypted[4]; String signinTokenParameter = "&SigninToken=" + HttpUtility.UrlEncode(signinToken, Encoding.UTF8); // The issuer parameter is optional, but recommended. Use it to direct users // to your sign-in page when their session expires. String issuer_param = "&Issuer=" + HttpUtility.UrlEncode(issuerURL, Encoding.UTF8); String destination_param = "&Destination=" + HttpUtility.UrlEncode(consoleURL, Encoding.UTF8); String loginURL = signInURL + "?Action=login" + signinTokenParameter + issuer_param + destination_param; return loginURL; }
  • 28. Choosing the right session type
  • 29. Federated sessions Assumed-role sessions
  • 30. Permissions Example Unrestricted access to all Action: “*” AWS Effect: Allow enabled services and account resources Resource: “*” (implicit) Action: [“s3:*”,”sts:Get*”] Access restricted by group IAM users and user policies Effect: Allow Resource: “*” Access restricted by Action: [“s3:Get*”] Federated generating identity & Effect: Allow sessions scoped further by policies Resource: used to generate request “arn:aws:s3:::mybucket/*” Assumed- Access restricted by role Action: [“ddb:*”] assumed & scoped further role by policies used to Effect: Allow Resource:“*” sessions generate request
  • 32.
  • 33. http://aws.amazon.com/iam • https:// forums.aws.amazon.com/forum.jspa?forumID=76 • http://aws.amazon.com/documentation/iam/ • http://aws.amazon.com/code/1288653099190193 • http://aws.amazon.com/code/TBD • http://aws.amazon.com/code/7351543942956566
  • 34. Code Session Time SEC101 A Guided Tour of AWS Identity and Access Management Wednesday 11/28 2.05pm SEC302 Delegating Access to Your AWS Environment Wednesday 11/28 3.25pm MBL302 Solving Common Mobile Use Cases with the AWS Mobile Wednesday 11/28 3.25pm SDKs SEC303 TOP 10 IAM Best Practices Thursday 11/29 3pm
  • 35. We are sincerely eager to hear your feedback on this presentation and on re:Invent. Please fill out an evaluation form when you have a chance.