SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Agenda
• Overview of the AWS Mobile SDKs:
  • http://aws.amazon.com/mobile
  • AWS SDK for iOS : http://aws.amazon.com/sdkforios/
  • AWS SDK for Android : http://aws.amazon.com/sdkforandroid/
• Common use cases
  •   Data storage
  •   Searchable data
  •   Application feedback
  •   Messaging
• Managing credentials
AWS Mobile SDKs
• What are the AWS mobile SDKs?

• Who should use them?

• Which services do they support?

• How are they integrated into my applications?

• How do I get help or support using the mobile SDKs?

• Where is the source code for the SDKs?
What Are the AWS Mobile SDKs?

• Simplifies mobile-to-cloud development

• Thick-client architecture

• AWS SDK for iOS
   • Support iOS v4.3 and above

• AWS SDK for Android
  • Supports Android v2.2 (API Level 8) and above
Who Should Use Them?

• Thick-client applications

• Don’t want to manage a back end

• Want users to make direct calls to the cloud

• Back-end processing isn’t necessary
Thin Versus Thick-Client Architecture
                            AWS
                            SDKs



 custom        thin architecture
 APIs
                                                        AWS mobile
                                                        SDKs


                                                           Thick clients
Thin clients proxy                 thick architecture      connect directly to
requests through                                           the services they
intermediary services                                      need
Which Services Do They Support?
• The AWS mobile SDKs support 11 services:
  •   Amazon Simple Storage Service (S3)
  •   Amazon DynamoDB
  •   Amazon Simple Queue Service (SQS)
  •   Amazon Simple Notification Service (SNS)
  •   Amazon Simple Email Service (SES)
  •   Amazon Elastic Compute Cloud (EC2)
  •   Elastic Load Balancing
  •   Auto Scaling
  •   Amazon CloudWatch
  •   Amazon SimpleDB
  •   AWS Security Token Service (STS)
Integration
• How are the SDKs integrated into my application?
  • AWS SDK for iOS
    • Single framework that can be added to your application

  • AWS SDK for Android
    • Single or service level jars available
Minimization
• How BIG will the SDKs make my application?
  • AWS SDK for iOS
    • Statically linked –only the parts you use will be added to your
      application

  • AWS SDK for Android
    • Proguard integration to help obfuscate and minimize the size of your
      application
Amazon S3

• SDK has many samples with Amazon S3
  • Amazon S3 allows for the storage and retrieval of data


• Article and sample for Amazon S3:
  • http://aws.amazon.com/articles/SDKs/3002109349624271
Amazon S3 Demo
Amazon S3 SDK Code
iOS                                                             Android
// Create Amazon S3 Client                                      // Create Amazon S3 Client
AmazonS3Client *s3 = [[AmazonS3Client alloc]                    AmazonS3Client s3 = new AmazonS3Client(
  initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY];      new BasicAWSCredentials( ACCESS_KEY_ID, SECRET_KEY ) );

// Create an S3 Bucket                                          // Create an S3 Bucket
[s3 createBucketWithName:PICTURE_BUCKET];                       s3.createBucket(PICTURE_BUCKET);


// Put an Object into a Bucket                                  // Put an Object into a Bucket
S3PutObjectRequest *por = [[S3PutObjectRequest alloc]           PutObjectRequest por =
           initWithKey:PICTURE_NAME inBucket:PICTURE_BUCKET];          new PutObjectRequest(PICTURE_BUCKET,
por.contentType = @"image/jpeg";                                                            PICTURE_NAME,
por.data = image;                                                                           new java.io.File( image ) );
[s3 putObject:por];                                             s3.putObject( por );


// Get an Object from a Bucket                                  // Get an Object from a Bucket
S3GetObjectRequest *gor = [[S3GetObjectRequest alloc]           S3Object data = s3.getObject(PICTURE_BUCKET, PICTURE_NAME);
     initWithKey:PICTURE_NAME withBucket:PICTURE_BUCKET];
S3GetObjectResponse *response = [s3 getObject:gor];
Queuing / Messaging (Amazon SQS, Amazon SNS)

• Queue up data for the application/user

• Send SMS/email to many users at once

• Article and sample for Amazon SNS & Amazon SQS:
  • http://aws.amazon.com/articles/SDKs/9156883257507082
Application Feedback (Amazon SES Demo)

• Have the application send you customer feedback, stack
  traces, etc.
  • Don’t leave the app to go to the mail client
  • Customers don’t worry about exposing their email address

• Article and sample included with SDKs for Amazon SES:
  • http://aws.amazon.com/articles/SDKs/3290993028247679
Amazon SES DEMO
Amazon SES Demo Code
iOS                                                              Android

// Create Amazon SES Client                                      // Create Amazon SES Client
AmazonSESClient *ses = [[AmazonSESClient alloc]                  AmazonSESClient ses = new AmazonSESClient(
  initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY];       new BasicAWSCredentials( ACCESS_KEY_ID, SECRET_KEY ) );

// Create the Message                                            // Create the Message
SESMessage *message = [Utility createMessage];                   Message message = Utility.createMessage();


// Send the Message                                              // Send the Message
SESDestination *destination = [[SESDestination alloc] init];     Destination to = new
[destination.toAddresses addObject:@”email@domain.com”];                     Destination().withToAddresses( “email@domain.com” );
                                                                 String from = “email@domain.com”;
                                                                 SendEmailRequest ser= new SendEmailRequest( from, to, message );
SESSendEmailRequest *ser = [[SESSendEmailRequest alloc] init];
                                                                 SendEmailResult result = ses.sendEmail( ser);
ser.source = @”email@domain.com”;
ser.destination = destination;
ser.message = message;
SESSendEmailResponse response = [ses sendEmail:ser];
Storing Searchable Data (Amazon DynamoDB)
• NoSQL database

• SDKs have low and high level interfaces:
  • AWS Persistence Framework for Core Data
  • DynamoDB Mapper for Android

• Articles and samples for all interfaces included in SDKs:
  • http://aws.amazon.com/articles/SDKs/7439603059327617
  • http://aws.amazon.com/articles/SDKs/4435846131581972
  • http://aws.amazon.com/articles/SDKs/3756417425850538
Managing Credentials

• DO NOT embed your ROOT credentials
  • If compromised, your entire AWS account is accessible
Managing Credentials

• Create an IAM account with limited permissions?
    { "Statement : [{
       "Effect":"Allow",
       "Action":["s3:PutObject","s3:GetObject"],
       "Resource":"arn:aws:s3:::my_bucket/*"}]
    }


• DO NOT embed IAM account credentials
  • Can’t rotate the credentials
  • NO individual user controls or revocation
Token Vending Machine

       TVM            STS

             Simple
               DB




                      temporary
 get token            credentials




                          requests via AWS mobile SDK
                          using temporary credentials
Token Vending Machine

• DO NOT EMBED YOUR CREDENTIALS!
  •   http://aws.amazon.com/articles/SDKs/4611615499399490
• Full Application TVM sample
  • http://aws.amazon.com/code/4598681430241367
Token Vending Machine Demo

• Amazon S3 personal file store demo using the token
  vending machine
Temporary Credentials—It’s in the Policy
{ "Statement : [{
    "Effect":"Allow",
    "Action":["s3:PutObject","s3:GetObject","s3:DeleteObject"],
    "Resource":"arn:aws:s3:::reinvent-personal-file-
store/__USERNAME__/*"
},
{
    "Effect":"Allow",
    "Action":"s3:ListBucket",
    "Resource":"arn:aws:s3:::reinvent-personal-file-store",
    "Condition":{"StringLike":{"s3:prefix":"__USERNAME__/"}}
}]}
Resources
• Links to services supported by AWS mobile SDKs:
  •   Amazon S3 (http://aws.amazon.com/s3/)
  •   Amazon DynamoDB (http://aws.amazon.com/dynamodb/)
  •   Amazon SQS (http://aws.amazon.com/sqs/)
  •   Amazon SNS (http://aws.amazon.com/sns/)
  •   Amazon SES (http://aws.amazon.com/ses/)
  •   Amazon EC2 (http://aws.amazon.com/ec2/)
  •   Elastic Load Balancing (http://aws.amazon.com/elasticloadbalancing/)
  •   Auto Scaling (http://aws.amazon.com/autoscaling/)
  •   CloudWatch (http://aws.amazon.com/cloudwatch/)
  •   Amazon SimpleDB (http://aws.amazon.com/simpledb/)
How Do I Get Help/Support Using the Mobile SDKs?

• Community support available through the AWS forums
  • https://forums.aws.amazon.com/forum.jspa?forumID=88


• SDKs contain a number of samples and articles

• AWS mobile blogs
  • Release updates
  • Tips & Tricks
Where’s the Source?

• All SDK source is available on GitHub:
  • http://github.com/aws/aws-sdk-android
  • http://github.com/aws/aws-sdk-ios
• Source includes project files to enable you to build the
  source directly
• Want something changed/improved?
  • Fork and submit a pull request!
We are sincerely eager to    #reinvent
 hear your feedback on this
presentation and on re:Invent.

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

Weitere ähnliche Inhalte

Was ist angesagt?

AWS IAM and security
AWS IAM and securityAWS IAM and security
AWS IAM and securityErik Paulsson
 
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
 
6 Things You Didn't Know About Firebase Auth
6 Things You Didn't Know About Firebase Auth6 Things You Didn't Know About Firebase Auth
6 Things You Didn't Know About Firebase AuthPeter Friese
 
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014Amazon 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
 
Rapid Application Development with SwiftUI and Firebase
Rapid Application Development with SwiftUI and FirebaseRapid Application Development with SwiftUI and Firebase
Rapid Application Development with SwiftUI and FirebasePeter Friese
 
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
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Kris Wagner
 
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013Amazon Web Services
 
Integrating an App with Amazon Web Services SimpleDB - A Matter of Choices
Integrating an App with Amazon Web Services SimpleDB - A Matter of ChoicesIntegrating an App with Amazon Web Services SimpleDB - A Matter of Choices
Integrating an App with Amazon Web Services SimpleDB - A Matter of ChoicesMark Maslyn
 
IAM Deep Dive - Custom IAM Policies with Conditions
IAM Deep Dive - Custom IAM Policies with ConditionsIAM Deep Dive - Custom IAM Policies with Conditions
IAM Deep Dive - Custom IAM Policies with ConditionsBryant Poush
 
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdf
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdfJeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdf
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdfJean-François LOMBARDO
 
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
 

Was ist angesagt? (19)

AWS IAM and security
AWS IAM and securityAWS IAM and security
AWS IAM and security
 
Aws iam best practices to live by
Aws iam best practices to live byAws iam best practices to live by
Aws iam best practices to live by
 
6 Things You Didn't Know About Firebase Auth
6 Things You Didn't Know About Firebase Auth6 Things You Didn't Know About Firebase Auth
6 Things You Didn't Know About Firebase Auth
 
AWS IAM Introduction
AWS IAM IntroductionAWS IAM Introduction
AWS IAM Introduction
 
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014
(MBL401) Social Logins for Mobile Apps with Amazon Cognito | AWS re:Invent 2014
 
Policy Ninja
Policy NinjaPolicy Ninja
Policy Ninja
 
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
 
Rapid Application Development with SwiftUI and Firebase
Rapid Application Development with SwiftUI and FirebaseRapid Application Development with SwiftUI and Firebase
Rapid Application Development with SwiftUI and Firebase
 
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)
 
Microsoft Azure Identity and O365
Microsoft Azure Identity and O365Microsoft Azure Identity and O365
Microsoft Azure Identity and O365
 
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013
Writing JavaScript Applications with the AWS SDK (TLS303) | AWS re:Invent 2013
 
Integrating an App with Amazon Web Services SimpleDB - A Matter of Choices
Integrating an App with Amazon Web Services SimpleDB - A Matter of ChoicesIntegrating an App with Amazon Web Services SimpleDB - A Matter of Choices
Integrating an App with Amazon Web Services SimpleDB - A Matter of Choices
 
Building mobile apps on AWS
Building mobile apps on AWSBuilding mobile apps on AWS
Building mobile apps on AWS
 
Mobile on AWS
Mobile on AWSMobile on AWS
Mobile on AWS
 
IAM Deep Dive - Custom IAM Policies with Conditions
IAM Deep Dive - Custom IAM Policies with ConditionsIAM Deep Dive - Custom IAM Policies with Conditions
IAM Deep Dive - Custom IAM Policies with Conditions
 
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdf
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdfJeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdf
Jeff Lombardo - Enforcing access control in depth with AWS - v1.2.pdf
 
IAM Best Practices
IAM Best PracticesIAM Best Practices
IAM Best Practices
 
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
 
IAM Introduction
IAM IntroductionIAM Introduction
IAM Introduction
 

Andere mochten auch

Staying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesStaying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesAmazon Web Services
 
Women in Technology: Supporting Diversity in a Technical Workplace
Women in Technology: Supporting Diversity in a Technical WorkplaceWomen in Technology: Supporting Diversity in a Technical Workplace
Women in Technology: Supporting Diversity in a Technical WorkplaceAmazon Web Services
 
Getting Started with Amazon DynamoDB
Getting Started with Amazon DynamoDBGetting Started with Amazon DynamoDB
Getting Started with Amazon DynamoDBAmazon Web Services
 
AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security Amazon Web Services
 
AWS Summit Tel Aviv - Startup Track - Backend Use Cases
AWS Summit Tel Aviv - Startup Track - Backend Use CasesAWS Summit Tel Aviv - Startup Track - Backend Use Cases
AWS Summit Tel Aviv - Startup Track - Backend Use CasesAmazon Web Services
 
MED301 Is My CDN Performing? - AWS re: Invent 2012
MED301 Is My CDN Performing? - AWS re: Invent 2012MED301 Is My CDN Performing? - AWS re: Invent 2012
MED301 Is My CDN Performing? - AWS re: Invent 2012Amazon Web Services
 
AWS Partner Presentation - Suse Linux Proven Cloud Success
AWS Partner Presentation - Suse Linux Proven Cloud SuccessAWS Partner Presentation - Suse Linux Proven Cloud Success
AWS Partner Presentation - Suse Linux Proven Cloud SuccessAmazon Web Services
 
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012Amazon Web Services
 
Webinar: Delivering Static and Dynamic Content Using CloudFront
Webinar: Delivering Static and Dynamic Content Using CloudFrontWebinar: Delivering Static and Dynamic Content Using CloudFront
Webinar: Delivering Static and Dynamic Content Using CloudFrontAmazon Web Services
 
Getting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsGetting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsAmazon Web Services
 
AWS Customer Presentation - AdaptiveBlue
AWS Customer Presentation - AdaptiveBlueAWS Customer Presentation - AdaptiveBlue
AWS Customer Presentation - AdaptiveBlueAmazon Web Services
 
AWS Customer Success Story - DotAndMedia
AWS Customer Success Story - DotAndMediaAWS Customer Success Story - DotAndMedia
AWS Customer Success Story - DotAndMediaAmazon Web Services
 
CPN202 More for Less - AWS re: Invent 2012
CPN202 More for Less - AWS re: Invent 2012CPN202 More for Less - AWS re: Invent 2012
CPN202 More for Less - AWS re: Invent 2012Amazon Web Services
 
Building a "Cloud Ready" IT Team
Building a "Cloud Ready" IT TeamBuilding a "Cloud Ready" IT Team
Building a "Cloud Ready" IT TeamAmazon Web Services
 
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...Amazon Web Services
 
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANA
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANAAWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANA
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANAAmazon Web Services
 
AWS Enterprise Day | Big Data Analytics
AWS Enterprise Day | Big Data AnalyticsAWS Enterprise Day | Big Data Analytics
AWS Enterprise Day | Big Data AnalyticsAmazon Web Services
 
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...Amazon Web Services
 

Andere mochten auch (20)

Staying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesStaying Lean with Amazon Web Services
Staying Lean with Amazon Web Services
 
Women in Technology: Supporting Diversity in a Technical Workplace
Women in Technology: Supporting Diversity in a Technical WorkplaceWomen in Technology: Supporting Diversity in a Technical Workplace
Women in Technology: Supporting Diversity in a Technical Workplace
 
Getting Started with Amazon DynamoDB
Getting Started with Amazon DynamoDBGetting Started with Amazon DynamoDB
Getting Started with Amazon DynamoDB
 
AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security
 
AWS Summit Tel Aviv - Startup Track - Backend Use Cases
AWS Summit Tel Aviv - Startup Track - Backend Use CasesAWS Summit Tel Aviv - Startup Track - Backend Use Cases
AWS Summit Tel Aviv - Startup Track - Backend Use Cases
 
MED301 Is My CDN Performing? - AWS re: Invent 2012
MED301 Is My CDN Performing? - AWS re: Invent 2012MED301 Is My CDN Performing? - AWS re: Invent 2012
MED301 Is My CDN Performing? - AWS re: Invent 2012
 
AWS Partner Presentation - Suse Linux Proven Cloud Success
AWS Partner Presentation - Suse Linux Proven Cloud SuccessAWS Partner Presentation - Suse Linux Proven Cloud Success
AWS Partner Presentation - Suse Linux Proven Cloud Success
 
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012
DAT203 Optimizing Your MongoDB Database on AWS - AWS re: Invent 2012
 
Webinar: Delivering Static and Dynamic Content Using CloudFront
Webinar: Delivering Static and Dynamic Content Using CloudFrontWebinar: Delivering Static and Dynamic Content Using CloudFront
Webinar: Delivering Static and Dynamic Content Using CloudFront
 
Getting Started with Real-Time Analytics
Getting Started with Real-Time AnalyticsGetting Started with Real-Time Analytics
Getting Started with Real-Time Analytics
 
AWS Customer Presentation - AdaptiveBlue
AWS Customer Presentation - AdaptiveBlueAWS Customer Presentation - AdaptiveBlue
AWS Customer Presentation - AdaptiveBlue
 
AWS Customer Success Story - DotAndMedia
AWS Customer Success Story - DotAndMediaAWS Customer Success Story - DotAndMedia
AWS Customer Success Story - DotAndMedia
 
CPN202 More for Less - AWS re: Invent 2012
CPN202 More for Less - AWS re: Invent 2012CPN202 More for Less - AWS re: Invent 2012
CPN202 More for Less - AWS re: Invent 2012
 
Building a "Cloud Ready" IT Team
Building a "Cloud Ready" IT TeamBuilding a "Cloud Ready" IT Team
Building a "Cloud Ready" IT Team
 
6 rules for innovation
6 rules for innovation6 rules for innovation
6 rules for innovation
 
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...
AWS Cloud Kata | Hong Kong - Getting to Scale on AWS, Customer Presentation b...
 
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANA
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANAAWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANA
AWS Partner Webcast - Make Decisions Faster with AWS and SAP on HANA
 
AWS Enterprise Day | Big Data Analytics
AWS Enterprise Day | Big Data AnalyticsAWS Enterprise Day | Big Data Analytics
AWS Enterprise Day | Big Data Analytics
 
AWS SeMINAR SERIES 2015 Sydney
AWS SeMINAR SERIES 2015 SydneyAWS SeMINAR SERIES 2015 Sydney
AWS SeMINAR SERIES 2015 Sydney
 
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...
AWS Webcast - Accelerating Application Performance Using In-Memory Caching in...
 

Ähnlich wie MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012

윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션Amazon Web Services Korea
 
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesJavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesCorley S.r.l.
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesAmazon Web Services
 
Cloud Security At Netflix, October 2013
Cloud Security At Netflix, October 2013Cloud Security At Netflix, October 2013
Cloud Security At Netflix, October 2013Jay Zarfoss
 
Build a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaBuild a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaTheFamily
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSAmazon Web Services
 
Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionAmazon Web Services
 
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013Amazon Web Services
 
Securing AWS environments by Ankit Giri
Securing AWS environments by Ankit GiriSecuring AWS environments by Ankit Giri
Securing AWS environments by Ankit GiriOWASP Delhi
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsDanilo Poccia
 
McrUmbMeetup 22 May 14: Umbraco and Amazon
McrUmbMeetup 22 May 14: Umbraco and AmazonMcrUmbMeetup 22 May 14: Umbraco and Amazon
McrUmbMeetup 22 May 14: Umbraco and AmazonDan Lister
 
Aws ebs snapshot with iam cross account access
Aws ebs snapshot with iam cross account accessAws ebs snapshot with iam cross account access
Aws ebs snapshot with iam cross account accessNaoya Hashimoto
 
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...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
 
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013Amazon Web Services
 
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...DevOps_Fest
 

Ähnlich wie MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012 (20)

윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
윈도 닷넷 개발자를 위한 솔루션 클라우드 데브옵스 솔루션
 
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resourcesJavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
 
Build Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile ServicesBuild Your Mobile App Faster with AWS Mobile Services
Build Your Mobile App Faster with AWS Mobile Services
 
Cloud Security At Netflix, October 2013
Cloud Security At Netflix, October 2013Cloud Security At Netflix, October 2013
Cloud Security At Netflix, October 2013
 
Build a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS LambdaBuild a mobile app serverless with AWS Lambda
Build a mobile app serverless with AWS Lambda
 
Serverless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWSServerless Geospatial Mobile Apps with AWS
Serverless Geospatial Mobile Apps with AWS
 
CloudStack EC2 Configuration
CloudStack EC2 ConfigurationCloudStack EC2 Configuration
CloudStack EC2 Configuration
 
Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced Session
 
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013
Building Scalable Windows and .NET Apps on AWS (TLS302) | AWS re:Invent 2013
 
Securing AWS environments by Ankit Giri
Securing AWS environments by Ankit GiriSecuring AWS environments by Ankit Giri
Securing AWS environments by Ankit Giri
 
Building Cloud-powered Mobile Apps
Building Cloud-powered Mobile AppsBuilding Cloud-powered Mobile Apps
Building Cloud-powered Mobile Apps
 
McrUmbMeetup 22 May 14: Umbraco and Amazon
McrUmbMeetup 22 May 14: Umbraco and AmazonMcrUmbMeetup 22 May 14: Umbraco and Amazon
McrUmbMeetup 22 May 14: Umbraco and Amazon
 
Aws ebs snapshot with iam cross account access
Aws ebs snapshot with iam cross account accessAws ebs snapshot with iam cross account access
Aws ebs snapshot with iam cross account access
 
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
(MBL311) Workshop: Build an Android App Using AWS Mobile Services | AWS re:In...
 
Building mobile apps on aws
Building mobile apps on awsBuilding mobile apps on aws
Building mobile apps on aws
 
Aws tutorial
Aws tutorialAws tutorial
Aws tutorial
 
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 ...
 
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013
Integrate Social Login Into Mobile Apps (SEC401) | AWS re:Invent 2013
 
Understanding AWS Security
Understanding AWS SecurityUnderstanding AWS Security
Understanding AWS Security
 
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...
DevOps Fest 2019. Alex Casalboni. Configuration management and service discov...
 

Mehr von 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
 

Mehr von 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
 

MBL302 Using the AWS Mobile SDKs - AWS re: Invent 2012

  • 1.
  • 2. Agenda • Overview of the AWS Mobile SDKs: • http://aws.amazon.com/mobile • AWS SDK for iOS : http://aws.amazon.com/sdkforios/ • AWS SDK for Android : http://aws.amazon.com/sdkforandroid/ • Common use cases • Data storage • Searchable data • Application feedback • Messaging • Managing credentials
  • 3. AWS Mobile SDKs • What are the AWS mobile SDKs? • Who should use them? • Which services do they support? • How are they integrated into my applications? • How do I get help or support using the mobile SDKs? • Where is the source code for the SDKs?
  • 4. What Are the AWS Mobile SDKs? • Simplifies mobile-to-cloud development • Thick-client architecture • AWS SDK for iOS • Support iOS v4.3 and above • AWS SDK for Android • Supports Android v2.2 (API Level 8) and above
  • 5. Who Should Use Them? • Thick-client applications • Don’t want to manage a back end • Want users to make direct calls to the cloud • Back-end processing isn’t necessary
  • 6. Thin Versus Thick-Client Architecture AWS SDKs custom thin architecture APIs AWS mobile SDKs Thick clients Thin clients proxy thick architecture connect directly to requests through the services they intermediary services need
  • 7. Which Services Do They Support? • The AWS mobile SDKs support 11 services: • Amazon Simple Storage Service (S3) • Amazon DynamoDB • Amazon Simple Queue Service (SQS) • Amazon Simple Notification Service (SNS) • Amazon Simple Email Service (SES) • Amazon Elastic Compute Cloud (EC2) • Elastic Load Balancing • Auto Scaling • Amazon CloudWatch • Amazon SimpleDB • AWS Security Token Service (STS)
  • 8. Integration • How are the SDKs integrated into my application? • AWS SDK for iOS • Single framework that can be added to your application • AWS SDK for Android • Single or service level jars available
  • 9. Minimization • How BIG will the SDKs make my application? • AWS SDK for iOS • Statically linked –only the parts you use will be added to your application • AWS SDK for Android • Proguard integration to help obfuscate and minimize the size of your application
  • 10. Amazon S3 • SDK has many samples with Amazon S3 • Amazon S3 allows for the storage and retrieval of data • Article and sample for Amazon S3: • http://aws.amazon.com/articles/SDKs/3002109349624271
  • 12. Amazon S3 SDK Code iOS Android // Create Amazon S3 Client // Create Amazon S3 Client AmazonS3Client *s3 = [[AmazonS3Client alloc] AmazonS3Client s3 = new AmazonS3Client( initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY]; new BasicAWSCredentials( ACCESS_KEY_ID, SECRET_KEY ) ); // Create an S3 Bucket // Create an S3 Bucket [s3 createBucketWithName:PICTURE_BUCKET]; s3.createBucket(PICTURE_BUCKET); // Put an Object into a Bucket // Put an Object into a Bucket S3PutObjectRequest *por = [[S3PutObjectRequest alloc] PutObjectRequest por = initWithKey:PICTURE_NAME inBucket:PICTURE_BUCKET]; new PutObjectRequest(PICTURE_BUCKET, por.contentType = @"image/jpeg"; PICTURE_NAME, por.data = image; new java.io.File( image ) ); [s3 putObject:por]; s3.putObject( por ); // Get an Object from a Bucket // Get an Object from a Bucket S3GetObjectRequest *gor = [[S3GetObjectRequest alloc] S3Object data = s3.getObject(PICTURE_BUCKET, PICTURE_NAME); initWithKey:PICTURE_NAME withBucket:PICTURE_BUCKET]; S3GetObjectResponse *response = [s3 getObject:gor];
  • 13. Queuing / Messaging (Amazon SQS, Amazon SNS) • Queue up data for the application/user • Send SMS/email to many users at once • Article and sample for Amazon SNS & Amazon SQS: • http://aws.amazon.com/articles/SDKs/9156883257507082
  • 14. Application Feedback (Amazon SES Demo) • Have the application send you customer feedback, stack traces, etc. • Don’t leave the app to go to the mail client • Customers don’t worry about exposing their email address • Article and sample included with SDKs for Amazon SES: • http://aws.amazon.com/articles/SDKs/3290993028247679
  • 16. Amazon SES Demo Code iOS Android // Create Amazon SES Client // Create Amazon SES Client AmazonSESClient *ses = [[AmazonSESClient alloc] AmazonSESClient ses = new AmazonSESClient( initWithAccessKey:ACCESS_KEY_ID withSecretKey:SECRET_KEY]; new BasicAWSCredentials( ACCESS_KEY_ID, SECRET_KEY ) ); // Create the Message // Create the Message SESMessage *message = [Utility createMessage]; Message message = Utility.createMessage(); // Send the Message // Send the Message SESDestination *destination = [[SESDestination alloc] init]; Destination to = new [destination.toAddresses addObject:@”email@domain.com”]; Destination().withToAddresses( “email@domain.com” ); String from = “email@domain.com”; SendEmailRequest ser= new SendEmailRequest( from, to, message ); SESSendEmailRequest *ser = [[SESSendEmailRequest alloc] init]; SendEmailResult result = ses.sendEmail( ser); ser.source = @”email@domain.com”; ser.destination = destination; ser.message = message; SESSendEmailResponse response = [ses sendEmail:ser];
  • 17. Storing Searchable Data (Amazon DynamoDB) • NoSQL database • SDKs have low and high level interfaces: • AWS Persistence Framework for Core Data • DynamoDB Mapper for Android • Articles and samples for all interfaces included in SDKs: • http://aws.amazon.com/articles/SDKs/7439603059327617 • http://aws.amazon.com/articles/SDKs/4435846131581972 • http://aws.amazon.com/articles/SDKs/3756417425850538
  • 18. Managing Credentials • DO NOT embed your ROOT credentials • If compromised, your entire AWS account is accessible
  • 19. Managing Credentials • Create an IAM account with limited permissions? { "Statement : [{ "Effect":"Allow", "Action":["s3:PutObject","s3:GetObject"], "Resource":"arn:aws:s3:::my_bucket/*"}] } • DO NOT embed IAM account credentials • Can’t rotate the credentials • NO individual user controls or revocation
  • 20. Token Vending Machine TVM STS Simple DB temporary get token credentials requests via AWS mobile SDK using temporary credentials
  • 21. Token Vending Machine • DO NOT EMBED YOUR CREDENTIALS! • http://aws.amazon.com/articles/SDKs/4611615499399490 • Full Application TVM sample • http://aws.amazon.com/code/4598681430241367
  • 22. Token Vending Machine Demo • Amazon S3 personal file store demo using the token vending machine
  • 23. Temporary Credentials—It’s in the Policy { "Statement : [{ "Effect":"Allow", "Action":["s3:PutObject","s3:GetObject","s3:DeleteObject"], "Resource":"arn:aws:s3:::reinvent-personal-file- store/__USERNAME__/*" }, { "Effect":"Allow", "Action":"s3:ListBucket", "Resource":"arn:aws:s3:::reinvent-personal-file-store", "Condition":{"StringLike":{"s3:prefix":"__USERNAME__/"}} }]}
  • 24. Resources • Links to services supported by AWS mobile SDKs: • Amazon S3 (http://aws.amazon.com/s3/) • Amazon DynamoDB (http://aws.amazon.com/dynamodb/) • Amazon SQS (http://aws.amazon.com/sqs/) • Amazon SNS (http://aws.amazon.com/sns/) • Amazon SES (http://aws.amazon.com/ses/) • Amazon EC2 (http://aws.amazon.com/ec2/) • Elastic Load Balancing (http://aws.amazon.com/elasticloadbalancing/) • Auto Scaling (http://aws.amazon.com/autoscaling/) • CloudWatch (http://aws.amazon.com/cloudwatch/) • Amazon SimpleDB (http://aws.amazon.com/simpledb/)
  • 25. How Do I Get Help/Support Using the Mobile SDKs? • Community support available through the AWS forums • https://forums.aws.amazon.com/forum.jspa?forumID=88 • SDKs contain a number of samples and articles • AWS mobile blogs • Release updates • Tips & Tricks
  • 26. Where’s the Source? • All SDK source is available on GitHub: • http://github.com/aws/aws-sdk-android • http://github.com/aws/aws-sdk-ios • Source includes project files to enable you to build the source directly • Want something changed/improved? • Fork and submit a pull request!
  • 27. We are sincerely eager to #reinvent hear your feedback on this presentation and on re:Invent. Please fill out an evaluation form when you have a chance.