SlideShare a Scribd company logo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices for AWS IoT Core
Max Jindal
Sr. Software Development Engineer
AWS IoT Core
I O T 3 4 7 - R
Alexandra Lee
Sr. Software Development Engineer
AWS IoT Core
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Related Sessions
Tuesday, November 27th
The Essentials of AWS IoT Device Management
2:30 – 3:30 | Mirage, St. Croix A
Thursday, November 29th
Anatomy of a Successful IoT Project
4:00 – 5:00 | Mirage, Grand Ballroom F
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices Summary
Connectivity and Security
1. Ensure the device clock stays
up-to-date
2. Use a single identity per
device
3. Apply fine-grained access
controls
4. Use Just-in-Time
Provisioning
Messaging
5. Do not share shadow
6. Use wildcard subscriptions
7. Place wildcard towards right
of high cardinality topic part
8. Use Rules Engine instead of
device subscriptions
9. Shard subscribers for faster
message delivery
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
1. Ensure the Device Clock Stays Up-To-Date
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
1. Ensure the Device Clock Stays Up-To-Date
✓
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Transport Layer Security (TLS) Authentication
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Device Certificates
✓
✕
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
2. Use a Single Identity per Device
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
3. Apply Fine-Grained Access Controls
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
4. Use Just In-Time Provisioning
aws iot register-ca-certificate
--ca-certificate <your-ca-cert>
--verification-cert <your-verification-cert>
--set-as-active --allow-auto-registration
--registration-config file://<your-template>
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
4. Use Just In-Time Provisioning
{ "templateBody":"{
"Parameters" : {
"AWS::IoT::Certificate::Id" : { "Type" : "String" } },
"Resources" : {
"certificate" : { "Type" : "AWS::IoT::Certificate",
"Properties" : {
"CertificateSigningRequest": {"Ref" : "CSR"},
"Status" : "ACTIVE" },
"OverrideSettings" : {
"Status" : "DO_NOTHING" }
},
"policy" : { "Type" : "AWS::IoT::Policy",
"Properties" : {
"PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{
"Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us-
east-1:123456789012:topic/foo/bar"] }] }"
}
}
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
4. Use Just In-Time Provisioning
{ "templateBody":"{
"Parameters" : {
"AWS::IoT::Certificate::Id" : { "Type" : "String" } },
"Resources" : {
"certificate" : { "Type" : "AWS::IoT::Certificate",
"Properties" : {
"CertificateSigningRequest": {"Ref" : "CSR"},
"Status" : "ACTIVE" },
"OverrideSettings" : {
"Status" : "DO_NOTHING" }
},
"policy" : { "Type" : "AWS::IoT::Policy",
"Properties" : {
"PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{
"Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us-
east-1:123456789012:topic/foo/bar"] }] }"
}
}
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
4. Use Just In-Time Provisioning
{ "templateBody":"{
"Parameters" : {
"AWS::IoT::Certificate::Id" : { "Type" : "String" } },
"Resources" : {
"certificate" : { "Type" : "AWS::IoT::Certificate",
"Properties" : {
"CertificateSigningRequest": {"Ref" : "CSR"},
"Status" : "ACTIVE" },
"OverrideSettings" : {
"Status" : "DO_NOTHING" }
},
"policy" : { "Type" : "AWS::IoT::Policy",
"Properties" : {
"PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{
"Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us-
east-1:123456789012:topic/foo/bar"] }] }"
}
}
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Messaging Patterns
Command & Control
Telemetry
Large Scale Notifications
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Command & Control - AWS IoT Shadows
SUBSCRIBE
Change Channel Forwards Command
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
5. Do Not Share Shadows
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Command & Control
Change Channel Forward Command
PUBLISH
command/switchOn
command/switchOff
command/volumeUp
command/volumeDown
…
…
SUBSCRIBE
command/switchOn
command/switchOff
command/volumeUp
command/volumeDown
…
…
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
6. Use Wildcard Subscriptions
SUBSCRIBE
command/switchOn
command/switchOff
command/volumeUp
command/volumeDown
…
…
SUBSCRIBE
command/+
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Command & Control – Multiple Devices
Change Channel
Forward Command
PUBLISH
deviced1/command/switchOn
deviced1/command/switchOff
deviced1/command/volumeUp
deviced1/command/volumeDown
…
…
SUBSCRIBE
device1/command/+
SUBSCRIBE
device2/command/+
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
7. Wildcard Placement on Subscription Topic Filter
Subscription Topic Filter should have high cardinality key before the
wildcard
scalable
scalable
deviceId/command/+
command/deviceId/+
NOT
scalable
command/+/deviceId
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Telemetry – Use Rules Engine
Amazon
Kinesis
AWS IoT rule
action
Telemetry data
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
8. Do Not Use Device Subscription for Telemetry
Telemetry data
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Large Scale Notifications
SUBSCRIBE
notification/firetv
PUBLISH
notification/firetv
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS IoT fanout
For each inbound message onto AWS IoT, AWS IoT will deliver that message
to all subscribers at a rate of 10,000 per sec
For 1 million devices, it takes
100 seconds
If we wanted to deliver messages < 60 sec ?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
9. Shard Subscribers
SUBSCRIBE
notification/firetv/shard2
SUBSCRIBE
notification/firetv/shard1
PUBLISH
notification/firetv/shard1
notification/firetv/shard2
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Best Practices Summary
Connectivity and Security
1. Ensure the device clock stays
up-to-date
2. Use a single identity per
device
3. Apply fine-grained access
controls
4. Use Just-in-Time
Provisioning
Messaging
5. Do not share shadow
6. Use wildcard subscriptions
7. Place wildcard towards right
of high cardinality topic part
8. Use Rules Engine instead of
device subscriptions
9. Shard subscribers for faster
message delivery
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
Amazon Web Services
 
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
Amazon Web Services
 
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
Amazon Web Services
 
AWS IoT - from Cloud to Edge | AWS Floor28
AWS IoT - from Cloud to Edge | AWS Floor28AWS IoT - from Cloud to Edge | AWS Floor28
AWS IoT - from Cloud to Edge | AWS Floor28
Amazon Web Services
 
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
Amazon Web Services
 
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
Amazon Web Services
 
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
Amazon Web Services
 
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
Amazon Web Services
 
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
Amazon Web Services
 
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
Amazon Web Services
 
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
Amazon Web Services
 
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
Amazon Web Services
 
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
Amazon Web Services
 
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
Amazon Web Services
 
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
Amazon Web Services
 
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
Amazon Web Services
 
AWS-Vizalytics-March-2018 2.pdf
AWS-Vizalytics-March-2018 2.pdfAWS-Vizalytics-March-2018 2.pdf
AWS-Vizalytics-March-2018 2.pdf
Amazon Web Services
 
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
Amazon Web Services
 
AWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di businessAWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di business
Amazon Web Services
 
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Amazon Web Services
 

What's hot (20)

Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
Securing and Managing IoT Devices at Scale (SEC367-R1) - AWS re:Invent 2018
 
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
IoT at the Edge: Introduction to AWS Greengrass (IOT406-R1) - AWS re:Invent 2018
 
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
Monitoring IoT Device Behavior with AWS IoT Device Defender Detect (IOT360) -...
 
AWS IoT - from Cloud to Edge | AWS Floor28
AWS IoT - from Cloud to Edge | AWS Floor28AWS IoT - from Cloud to Edge | AWS Floor28
AWS IoT - from Cloud to Edge | AWS Floor28
 
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
Detect Abnormal Device Behavior with AWS IoT Device Defender (IOT313-R3) - AW...
 
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
Alexa and AWS IoT, ft. VIZIO (IOT302-R1) - AWS re:Invent 2018
 
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
Unlock Highly Regulated Enterprise Workloads with SaaS on AWS GovCloud (US) (...
 
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
AWS Greengrass & Amazon FreeRTOS: Connectivity & Security at the Edge (IOT356...
 
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
Understand the State of Your Connected Devices (IOT367) - AWS re:Invent 2018
 
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
Orchestrate Perimeter Security Across Distributed Applications (SEC326) - AWS...
 
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
How to Quickly Get Insights from IoT Data on AWS (ANT337-S) - AWS re:Invent 2018
 
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
Building IoT Devices for Regulated Industries (LFS304-i) - AWS re:Invent 2018
 
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
Amazon FreeRTOS: IoT Operating System for Microcontrollers (IOT208-R1) - AWS ...
 
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
Managing Security of Large IoT Fleets (IOT321-R1) - AWS re:Invent 2018
 
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
Customer Showcase for AWS IoT Analytics (IOT219) - AWS re:Invent 2018
 
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
Tips for Building IoT Applications Faster (IOT366) - AWS re:Invent 2018
 
AWS-Vizalytics-March-2018 2.pdf
AWS-Vizalytics-March-2018 2.pdfAWS-Vizalytics-March-2018 2.pdf
AWS-Vizalytics-March-2018 2.pdf
 
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
AWS IoT - How Low Can You Go (IOT357-R1) - AWS re:Invent 2018
 
AWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di businessAWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di business
 
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
 

Similar to Best Practices for AWS IoT Core (IOT347-R1) - AWS re:Invent 2018

Lock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS AccountLock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS Account
Amazon Web Services
 
AWS Security by Design
AWS Security by Design AWS Security by Design
AWS Security by Design
Amazon Web Services
 
AWS IoT in the Connected Home - AWS Online Tech Talks
AWS IoT in the Connected Home - AWS Online Tech TalksAWS IoT in the Connected Home - AWS Online Tech Talks
AWS IoT in the Connected Home - AWS Online Tech Talks
Amazon Web Services
 
AWS IoT Security Best Practices
AWS IoT Security Best PracticesAWS IoT Security Best Practices
AWS IoT Security Best Practices
Amazon Web Services
 
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
Amazon Web Services
 
New AWS Security Solutions to Protect Your Workload
New AWS Security Solutions to Protect Your WorkloadNew AWS Security Solutions to Protect Your Workload
New AWS Security Solutions to Protect Your Workload
Amazon Web Services
 
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
Amazon Web Services
 
Lock it Down: How to Secure your AWS Account and your Organization's Accounts
Lock it Down: How to Secure your AWS Account and your Organization's AccountsLock it Down: How to Secure your AWS Account and your Organization's Accounts
Lock it Down: How to Secure your AWS Account and your Organization's Accounts
Amazon Web Services
 
How AI is disrupting the world
How AI is disrupting the world How AI is disrupting the world
How AI is disrupting the world
Amazon Web Services
 
SecuringYourCustomersDataFromDayOne_SFStartupDay
SecuringYourCustomersDataFromDayOne_SFStartupDaySecuringYourCustomersDataFromDayOne_SFStartupDay
SecuringYourCustomersDataFromDayOne_SFStartupDay
Amazon Web Services
 
Deep Dive - AWS Security by Design
Deep Dive - AWS Security by DesignDeep Dive - AWS Security by Design
Deep Dive - AWS Security by Design
Amazon Web Services
 
Securing Your Customers Data From Day One
Securing Your Customers Data From Day OneSecuring Your Customers Data From Day One
Securing Your Customers Data From Day One
Amazon Web Services LATAM
 
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day OneAWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
AWS Germany
 
Securing Your Customers Data From Day One
Securing Your Customers Data From Day OneSecuring Your Customers Data From Day One
Securing Your Customers Data From Day One
Amazon Web Services
 
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOneAWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
Amazon Web Services
 
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdfSecuring Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
Amazon Web Services
 
Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2
Amazon Web Services
 
Getting Started with AWS Security
Getting Started with AWS SecurityGetting Started with AWS Security
Getting Started with AWS Security
Amazon Web Services
 
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
Amazon Web Services
 
Amazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and RemediationAmazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and Remediation
Amazon Web Services
 

Similar to Best Practices for AWS IoT Core (IOT347-R1) - AWS re:Invent 2018 (20)

Lock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS AccountLock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS Account
 
AWS Security by Design
AWS Security by Design AWS Security by Design
AWS Security by Design
 
AWS IoT in the Connected Home - AWS Online Tech Talks
AWS IoT in the Connected Home - AWS Online Tech TalksAWS IoT in the Connected Home - AWS Online Tech Talks
AWS IoT in the Connected Home - AWS Online Tech Talks
 
AWS IoT Security Best Practices
AWS IoT Security Best PracticesAWS IoT Security Best Practices
AWS IoT Security Best Practices
 
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
Leadership Session: AWS Security (SEC305-L) - AWS re:Invent 2018
 
New AWS Security Solutions to Protect Your Workload
New AWS Security Solutions to Protect Your WorkloadNew AWS Security Solutions to Protect Your Workload
New AWS Security Solutions to Protect Your Workload
 
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
Security Framework Shakedown: Chart Your Journey with AWS Best Practices (SEC...
 
Lock it Down: How to Secure your AWS Account and your Organization's Accounts
Lock it Down: How to Secure your AWS Account and your Organization's AccountsLock it Down: How to Secure your AWS Account and your Organization's Accounts
Lock it Down: How to Secure your AWS Account and your Organization's Accounts
 
How AI is disrupting the world
How AI is disrupting the world How AI is disrupting the world
How AI is disrupting the world
 
SecuringYourCustomersDataFromDayOne_SFStartupDay
SecuringYourCustomersDataFromDayOne_SFStartupDaySecuringYourCustomersDataFromDayOne_SFStartupDay
SecuringYourCustomersDataFromDayOne_SFStartupDay
 
Deep Dive - AWS Security by Design
Deep Dive - AWS Security by DesignDeep Dive - AWS Security by Design
Deep Dive - AWS Security by Design
 
Securing Your Customers Data From Day One
Securing Your Customers Data From Day OneSecuring Your Customers Data From Day One
Securing Your Customers Data From Day One
 
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day OneAWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
AWS STARTUP DAY 2018 I Securing Your Customer Data From Day One
 
Securing Your Customers Data From Day One
Securing Your Customers Data From Day OneSecuring Your Customers Data From Day One
Securing Your Customers Data From Day One
 
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOneAWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
AWS18_StartupDayToronto_SecuringYourCustomersDataFromDayOne
 
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdfSecuring Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
Securing Customer Data from Day 1 - AWS Startup Day Boston 2018.pdf
 
Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2
 
Getting Started with AWS Security
Getting Started with AWS SecurityGetting Started with AWS Security
Getting Started with AWS Security
 
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
IoT at scale - Monitor and manage devices with AWS IoT Device Management - SV...
 
Amazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and RemediationAmazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and Remediation
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon 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
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
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 Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon 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 sfatare
Amazon 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 NodeJS
Amazon 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 web
Amazon 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 sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

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

Best Practices for AWS IoT Core (IOT347-R1) - AWS re:Invent 2018

  • 1. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices for AWS IoT Core Max Jindal Sr. Software Development Engineer AWS IoT Core I O T 3 4 7 - R Alexandra Lee Sr. Software Development Engineer AWS IoT Core
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Related Sessions Tuesday, November 27th The Essentials of AWS IoT Device Management 2:30 – 3:30 | Mirage, St. Croix A Thursday, November 29th Anatomy of a Successful IoT Project 4:00 – 5:00 | Mirage, Grand Ballroom F
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices Summary Connectivity and Security 1. Ensure the device clock stays up-to-date 2. Use a single identity per device 3. Apply fine-grained access controls 4. Use Just-in-Time Provisioning Messaging 5. Do not share shadow 6. Use wildcard subscriptions 7. Place wildcard towards right of high cardinality topic part 8. Use Rules Engine instead of device subscriptions 9. Shard subscribers for faster message delivery
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 1. Ensure the Device Clock Stays Up-To-Date
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 1. Ensure the Device Clock Stays Up-To-Date ✓
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Transport Layer Security (TLS) Authentication
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Device Certificates ✓ ✕
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 2. Use a Single Identity per Device
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 3. Apply Fine-Grained Access Controls
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4. Use Just In-Time Provisioning aws iot register-ca-certificate --ca-certificate <your-ca-cert> --verification-cert <your-verification-cert> --set-as-active --allow-auto-registration --registration-config file://<your-template>
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4. Use Just In-Time Provisioning { "templateBody":"{ "Parameters" : { "AWS::IoT::Certificate::Id" : { "Type" : "String" } }, "Resources" : { "certificate" : { "Type" : "AWS::IoT::Certificate", "Properties" : { "CertificateSigningRequest": {"Ref" : "CSR"}, "Status" : "ACTIVE" }, "OverrideSettings" : { "Status" : "DO_NOTHING" } }, "policy" : { "Type" : "AWS::IoT::Policy", "Properties" : { "PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us- east-1:123456789012:topic/foo/bar"] }] }" } } } }
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4. Use Just In-Time Provisioning { "templateBody":"{ "Parameters" : { "AWS::IoT::Certificate::Id" : { "Type" : "String" } }, "Resources" : { "certificate" : { "Type" : "AWS::IoT::Certificate", "Properties" : { "CertificateSigningRequest": {"Ref" : "CSR"}, "Status" : "ACTIVE" }, "OverrideSettings" : { "Status" : "DO_NOTHING" } }, "policy" : { "Type" : "AWS::IoT::Policy", "Properties" : { "PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us- east-1:123456789012:topic/foo/bar"] }] }" } } } }
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4. Use Just In-Time Provisioning { "templateBody":"{ "Parameters" : { "AWS::IoT::Certificate::Id" : { "Type" : "String" } }, "Resources" : { "certificate" : { "Type" : "AWS::IoT::Certificate", "Properties" : { "CertificateSigningRequest": {"Ref" : "CSR"}, "Status" : "ACTIVE" }, "OverrideSettings" : { "Status" : "DO_NOTHING" } }, "policy" : { "Type" : "AWS::IoT::Policy", "Properties" : { "PolicyDocument" : "{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action":["iot:Publish"], "Resource": ["arn:aws:iot:us- east-1:123456789012:topic/foo/bar"] }] }" } } } }
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Messaging Patterns Command & Control Telemetry Large Scale Notifications
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Command & Control - AWS IoT Shadows SUBSCRIBE Change Channel Forwards Command
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 5. Do Not Share Shadows
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Command & Control Change Channel Forward Command PUBLISH command/switchOn command/switchOff command/volumeUp command/volumeDown … … SUBSCRIBE command/switchOn command/switchOff command/volumeUp command/volumeDown … …
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 6. Use Wildcard Subscriptions SUBSCRIBE command/switchOn command/switchOff command/volumeUp command/volumeDown … … SUBSCRIBE command/+
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Command & Control – Multiple Devices Change Channel Forward Command PUBLISH deviced1/command/switchOn deviced1/command/switchOff deviced1/command/volumeUp deviced1/command/volumeDown … … SUBSCRIBE device1/command/+ SUBSCRIBE device2/command/+
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 7. Wildcard Placement on Subscription Topic Filter Subscription Topic Filter should have high cardinality key before the wildcard scalable scalable deviceId/command/+ command/deviceId/+ NOT scalable command/+/deviceId
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Telemetry – Use Rules Engine Amazon Kinesis AWS IoT rule action Telemetry data
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 8. Do Not Use Device Subscription for Telemetry Telemetry data
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Large Scale Notifications SUBSCRIBE notification/firetv PUBLISH notification/firetv
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS IoT fanout For each inbound message onto AWS IoT, AWS IoT will deliver that message to all subscribers at a rate of 10,000 per sec For 1 million devices, it takes 100 seconds If we wanted to deliver messages < 60 sec ?
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 9. Shard Subscribers SUBSCRIBE notification/firetv/shard2 SUBSCRIBE notification/firetv/shard1 PUBLISH notification/firetv/shard1 notification/firetv/shard2
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Best Practices Summary Connectivity and Security 1. Ensure the device clock stays up-to-date 2. Use a single identity per device 3. Apply fine-grained access controls 4. Use Just-in-Time Provisioning Messaging 5. Do not share shadow 6. Use wildcard subscriptions 7. Place wildcard towards right of high cardinality topic part 8. Use Rules Engine instead of device subscriptions 9. Shard subscribers for faster message delivery
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.