45
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. John Burry, Senior Manager, Solutions Architecture July 13, 2016 Getting Started with AWS IoT

Getting Started with AWS IoT

Embed Size (px)

Citation preview

Page 1: Getting Started with AWS IoT

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

John Burry, Senior Manager, Solutions Architecture

July 13, 2016

Getting Started with AWS IoT

Page 2: Getting Started with AWS IoT

The “Internet of Things”

(plural)

Page 3: Getting Started with AWS IoT
Page 4: Getting Started with AWS IoT

Things are NOT static assets

Page 5: Getting Started with AWS IoT
Page 6: Getting Started with AWS IoT
Page 7: Getting Started with AWS IoT

The customer has many identities

Page 8: Getting Started with AWS IoT
Page 9: Getting Started with AWS IoT
Page 10: Getting Started with AWS IoT

The home is someone’s

enterprise

Page 11: Getting Started with AWS IoT
Page 12: Getting Started with AWS IoT

Disruption is a process, not a

moment in time

Page 13: Getting Started with AWS IoT
Page 14: Getting Started with AWS IoT
Page 15: Getting Started with AWS IoT

“There is nothing in that patent except as a toy.”

William Orton

Page 16: Getting Started with AWS IoT
Page 17: Getting Started with AWS IoT
Page 18: Getting Started with AWS IoT

The “Internet of Things”

(plural)

Page 19: Getting Started with AWS IoT

AWS IoT

Page 20: Getting Started with AWS IoT

Routing noise

Page 21: Getting Started with AWS IoT

Publish / Subscribe

Standard protocol support

MQTT, HTTP, WebSocket

Long-lived connections

Receive signals from the cloud

Secure by default

Connect securely via X.509 certs

and TLS 1.2 client mutual auth

Page 22: Getting Started with AWS IoT

Sensor messages

Standard protocol support

MQTT, HTTP, WebSocket

Topic/channel

Message routing hierarchy

Control over full tree

Payload (JSON)

Customer-defined JSON payload

Page 23: Getting Started with AWS IoT

Finding the signals

Page 24: Getting Started with AWS IoT

Extracting the value from messages

• Filter messages with certain criteria

• Move messages to other topics

• Move messages to other systems

• Transform the payload of messages

• Predict messages based on trends

• React based on messages

Page 25: Getting Started with AWS IoT

Rules engine

Page 26: Getting Started with AWS IoT

new: Elasticsearch Integration

Page 27: Getting Started with AWS IoT

new: Predict function

Page 28: Getting Started with AWS IoT

Adding human computation?

Page 29: Getting Started with AWS IoT

A company does not have to disrupt its core

offering when being disrupted

Page 30: Getting Started with AWS IoT

AWS IoT device shadow

Page 31: Getting Started with AWS IoT

AWS IoT device shadow

Page 32: Getting Started with AWS IoT

1. Device publishes current state

2. Persist JSON data store

3. App requests device’s current state

4. App requests change the state5. Device shadow syncs

updated state

6. Device publishes current state 7. Device shadow confirms state change

AWS IoT device shadow flow

Page 33: Getting Started with AWS IoT

AWS IoT device shadow - Simple yet powerful

{

"state" : {

“desired" : {

"lights": { "color": "RED" },

"engine" : "ON"

},

"reported" : {

"lights" : { "color": "GREEN" },

"engine" : "ON"

},

"delta" : {

"lights" : { "color": "RED" }

} },

"version" : 10

}

Device

Report its current state to one or multiple shadows

Retrieve its desired state from shadow

Mobile app

Set the desired state of a device

Get the last reported state of the device

Delete the shadow

Shadow

Shadow reports delta, desired and reported

states along with metadata and version

Page 34: Getting Started with AWS IoT

Security

Page 35: Getting Started with AWS IoT
Page 36: Getting Started with AWS IoT

Securing devices

Page 37: Getting Started with AWS IoT

Mutual auth TLS

Page 38: Getting Started with AWS IoT

TLS mutual authentication

• Create CSR

• Create X.509 certificate from CSR

• Activate the certificate

• Create policy

• Attach policy to certificate

* Certificate must be issued by AWS IoT

Page 39: Getting Started with AWS IoT

new: Bring your own certificate

• Use certificates issued by your own CA

• Existing certificate issuance infrastructure

• Use certificates already on board

• Limited Internet connectivity from assembly/manufacturing

locations

• Seamless provisioning of devices

• 8 new API calls to support management of certificates

Page 40: Getting Started with AWS IoT

Securing AWS resource access

Page 41: Getting Started with AWS IoT

Creating the trust relationship with AWS IoT

P P

PRole

{

"Version": "2012-10-17",

"Statement": [

{

"Sid": "",

"Effect": "Allow",

"Principal": {

"Service": “iot.amazonaws.com”

},

"Action": "sts:AssumeRole"

}

]

}

Page 42: Getting Started with AWS IoT

Securing AWS resource access

Page 43: Getting Started with AWS IoT

Securing user access

• WebSocket support SigV4 authentication

• IAM roles and policies

• Amazon Cognito identity pools

• Anonymous access to iot:Subscribe

• Use your own application-level authentication patterns

Page 44: Getting Started with AWS IoT

Remember to complete

your evaluations!

Page 45: Getting Started with AWS IoT