SlideShare a Scribd company logo
AWS IoT アップデート
アマゾン ウェブ サービスジャパン株式会社
ソリューション アーキテクト
福井 厚
名前:福井 厚(@fatushi)
所属:アマゾンウェブサービスジャパン株式会社
技術本部エンタープライズソリューション部
ソリューション アーキテクト
経歴:
メーカーサポート、ソフトハウス、SIベンダー(国産、外資)、開発系コンサルティング ファームを経て2015年
7⽉ よりアマゾン ウェブ サービス ジャパン株式会社でソリューション アーキテクトとして活動。
2008年8⽉、Microsoft Certified Architect for Solutions Certification (MCA) に認定される。
マイクロソフトMVPアワード受賞歴11回(2015年7⽉にMVP 終了)
C#を愛し、.NETが⼤好きなエンジニアとして .NET開発者向けにAWSを普及する活動を実施中。
好きなAWSサービス: AWS IoT, Code Commit, Code Deploy, Code Pipeline
⾃⼰紹介
AWS IoT 概要
クラウドとモノをつなげるときに解決すべき
課題
多くのSDKや
ツール
様々なプロトコル スケーラビリティ
&
ノイズ/信号
セキュリティ
&
管理
クラウド、モバイルアプリま
たは分析基盤とのインテグ
レーション
AWS IoT
デバイスデータに対する
いろいろなアクション
セキュアでスケーラブルな
デバイスとクラウドの
双⽅向接続
誰でも簡単に
はじめられる
さまざまなデバイスをAWSの各種サービスや他のデバイスにセキュアに接続し、
デバイスデータに対する処理やアクションを実⾏することが可能
データフローとAWSサービスのマッピング
収集 処理 分析
保存
S3
Kinesis
DynamoDB
Data Collection
and Storage
AWS	Lambda
KCL	Apps
Event
Processing
EMR Redshift
Machine
Learning
Data
Processing
Data
Analysis
IoT
AWS IoT Overview
AWS IoT : メッセージブローカー
メッセージブローカー
AWS IoT メッセージブローカー
スタンダードプロトコル (no lock-in)
数百万デバイスやアプリをMQTTや
HTTP1.1プロトコルを使って通信ができる
長期間のセッション保持によるクラウドを介し
たメッセージ送受信
クライアント(デバイスやアプリ)は制御信号
やコマンドなどをクラウドから受信することが
できる
デフォルトのセキュリティ
X509証明書とTLS1.2を使った相互認証が
デフォルト
Topic Based
Architecture
(lights/thing-2/color)
ハイスケーラブルメッ
セージブローカー
MQTT
• M2M/IoTで利⽤されるコミュニケーションプロトコル
• OASIS スタンダードプロトコル(v3.1.1)
• ライトウェイト
• Pub-Sub メッセージ交換モデル
• リソースや回線帯域が限られているデバイスで利⽤
MQTT Publish/Subscribe
Publisher
Publisher
Publisher
Broker
Topic:
sensor/temp
Subscriber
Subscriber
Subscriber
MQTTトピック – ワイルドカード “#”
sensor/#
sensor配下すべての
トピックをsubscribe
sensor/water/room1
temp
water
door
temp water door
MQTTトピック – ワイルドカード “+”
sensor/+/room1
sensorが1階層⽬でかつ
room1が3階層⽬の
トピックをsubscribe
sensor/water/room1
temp
water
door
temp water
AWS IoT Security : 認証とアクセス許可
AUTHENTICATION
Secure with mutual
authentication and encryption
認証とアクセス許可
TLSを使ったクライアント相互認証
AWS IoTが対応する2つのプロトコル
MQTT + Mutual Auth TLS AWS Auth + HTTPS
Server Auth TLS + Cert TLS + Cert
Client Auth TLS + Cert AWS API Keys
Confidentiality TLS TLS
Protocol MQTT / MQTT over
WebSockets (New)
HTTP
Identification AWS ARNs AWS ARNs
Authorization AWS Policy AWS Policy
NEW 従来のAWSプロトコル
AWS IoTポリシー
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action":["iot:Publish"]
"Resource": ["arn:aws:iot:ap-northeast-1-1:123456789012:topic/foo /bar"]
}, {
"Effect": "Allow",
"Action": ["iot:Connect"],
"Resource": ["*"]
}]
}
証明書にアタッチ
デバイスに対してAWS IoTのどのリソース(トピックなど)に対し、
どのような権限を与えるか、きめ細かい権限設定が可能
アプリケーションはCognitoアイデンティティを利⽤
デバイス(IoT証明書)
• Action: SUBSCRIBE
• Resource: /thing/123
• Effect: Allow
AWS Cognitoアイデンティティ(IoTポリシー)
• Action: PUBLISH
• Resource:/thing/123
• Effect: Allow
SUBSCRIBE /thing/123
PUBLISH /thing/123
AWS IoT全体のセキュリティ
DynamoDB
AWSユーザ
• AWSセキュリティクレデンシャル
• IAMポリシー
AWSユーザ
• AWSセキュリティクレデンシャル
• IAMポリシーデバイス
• IoT証明書
• IoTポリシー
AWS Cognitoアイデンティティ
• 認証プロバイダトークン +
AWSセキュリティクレデンシャル
• IAMロールポリシー
• IoTポリシー AWSユーザ
• AWSセキュリティ
クレデンシャル
• IAMポリシー
IoTルールエンジン
• AWS IAMロール
• AWSセキュリティ
クレデンシャル
• IAMロールポリシー
Lambda Kinesis
MQTT over WebSockets サポート
• AWS IoT デバイスゲートウェイが MQTT over
WebSockets をサポート
– モバイル及びWeb アプリケーションとの間でWeb Socket を利
⽤したリアルタイムなメッセージ交換が可能
– 容易に多数のユーザーとの同時利⽤にスケール可能
– アプリケーションやデバイスの利⽤者の安全な認証に
WebSocket とともに Amazon Cognito も利⽤可能
Demo - MQTT over WebSockets
AWS Iot MQTT over WebSockets のデモ
• http://bit.ly/214cW6G
カスタム Keep Alive インターバル サポート
• カスタム MQTT Keep Alive インターバルをサ
ポートし、コネクションをオープンしてから
メッセージを受信するまでのタイムアウト時間
を指定可能
– 指定した時間を超えてメッセージやPINGが届かなかった場合は、
AWS IoT がコネクションを切断
AWS IoT コンソール アップデート
• MQTT Client コンソールの追加
• その他細かなアップデート
– 証明書の削除
– ポリシーのバージョン管理
– デバイスの詳細情報
AWS IoT: ルールエンジン
ルールエンジン
シンプル&慣れた構文
- SQL文を使ったトピックのフィルタ
- WHERE句をオプションで付けることも
可能
- JSONサポート
メッセージ変換機能
- 文字列操作 (regex support)
- 算術計算
- コンテキストベースのヘルパー
- 暗号
- UUID, Timestamp, 乱数など.
AWS IoT ルールエンジン概要
SELECT * FROM ‘things/thing-2/color’
WHERE color = ‘red’
AWS IoT ルールエンジン概要
複数のアクション
- 1つのメッセージに対して複数ルールを適用可能
AWS IoT ルールエンジンアクション
RULES ENGINE
Transform messages
based on rules and
route to AWS Services
AWS Services
- - - - -
3P Services
AWS サービス
- - - - -
外部サービス
AWS IoT AWSサービス
ルールエンジンは、受け取ったメッ
セージを評価し、適切に変換とエ
ンドポイントへの配信をルールに
従って実行
外部のエンドポイントは、Lambda
かSNSを使って呼び出す
Lambda functionの呼び出し
S3 bucketへのデータ格納
DynamoDBテーブルへの挿入、
更新と読み出し
SNS Topicまたは、Endpointに対
するパブリッシュ
Kinesis streamへのパブリッシュ
アクション
Amazon Firehoseへのパブリッシュ
AWS IoTへのリパブリッシュ
AWS IoT : シャドー
THING SHADOW
Persistent thing state
during intermittent
connections
シャドー
アプリケーション
AWS IoT シャドー
Shadow
AWS IoT シャドーのフロー
Shadow
Device SDK
1. Device Publishes CurrentState
2. Persist JSON Data Store
3. App requests device’s currentstate
4. App requests change the state
5. Device Shadow sync’s
updated state
6. Device Publishes CurrentState
7. Device Shadow confirms state change
AWS IoT
AWS IoT シャドー 概要
{
"state" : {
“desired" : {
"lights": { "color": "RED" },
"engine" : "ON"
},
"reported" : {
"lights" : { "color": "GREEN" },
"engine" : "ON"
},
"delta" : {
"lights" : { "color": "RED" }
} },
"version" : 10
}
Thing
1つまたは複数の現状ステータスをシャドーに通知
シャドーから要求されるステータスを取得
Mobile App
デバイスに対して変更したいステータスをセット
最新の通知されたステータスを取得
シャドーの削除
Shadow
シャドーは、delta, desired 及びreportedステータスを
メタデータとバージョンをつけて管理
AWS IoT シャドーのTopics (MQTT)
Thing SDK (C-SDK, JS-SDK)を使うと
簡単にシャドーの機能が使えます。
自動的にデバイスとシャドーを同期さ
れます。
AWS IoT Thing Shadow
UPDATE: $aws/things/{thingName}/shadow/update
DELTA: $aws/things/{thingName}/shadow/update/delta
GET: $aws/things/{thingName}/shadow/get
DELETE: $aws/things/{thingName}/shadow/delete
Sensor Reported Desired Delta
LED1 RED YELLOW
LED1 =
Yellow
TEMP = 60F
ACCEL X=1,Y=5,Z=4 X=1,Y=5,Z=4
TEMP 83F 60F
AWS IoT Registry
THING REGISTRY
Identity and Management of
your things
レジストリ
AWS IoT : レジストリ
• key: value
– ファームバージョンやシリアル番号など
• サポートやメンテナンス⽬的で利⽤
– マニュアルのURLやリファレンス番号
• 外部システム連携でも利⽤可能
AWS IoT – デバイス管理
• S3上にバージョン管理されたファームを管理
• メッセージブローカーのTopicパターンを使ってデバイス群に通知。通知内容にS3のダウ
ンロードURLいれる
Firmware Update
Stored in S3
Publish to groups of devices
• Ability to update global
or within a Region
• Rules Engine keeps
state of updates and
tracks progress in a
DynamoDB Table
• Store Version in
Registry Entry
AWS IoT Device SDK
C-SDK
(Ideal for embedded
OS)
JS-SDK
(Ideal for Embedded
Linux Platforms)
Arduino Library
(Arduino Yun)
Mobile SDK
(Android and iOS)
AWS IoT
DEVICE SDK
Set of client libraries to
connect, authenticate and
exchange messages
MESSAGE BROKER
Communicate with devices via
MQTT and HTTP
AUTHENTICATION
AUTHORIZATION
Secure with mutual
authentication and encryption
RULES ENGINE
Transform messages
based on rules and
route to AWS Services
AWS Services
- - - - -
3P Services
SHADOW
Persistent thing state
during intermittent
connections
APPLICATIONS
AWS IoT API
REGISTRY
Identity and Management of
your things
まとめ
• AWS IoT は IoT のプラットフォーム機能を提供
– デバイスSDK、認証、認可、メッセージ ブローカー、ルールエンジン、
シャドー、デバイス管理
• AWS の他のサービスと容易に連携
• MQTT over WebSockets をサポート(Update!)
AWS IoT アップデート 2016.02.16

More Related Content

PDF
AWS Black Belt Online Seminar lumberyard
PDF
AWS Blackbelt 2015シリーズ AWS Lambda
PDF
AWS初心者向けWebinar AWSクラウドにおけるVDIソリューション
PDF
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
PDF
20170413 aws–windows users meetup
PDF
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
PDF
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
PDF
ゲームプラットフォーム on AWS
AWS Black Belt Online Seminar lumberyard
AWS Blackbelt 2015シリーズ AWS Lambda
AWS初心者向けWebinar AWSクラウドにおけるVDIソリューション
AWS Black Belt Techシリーズ AWS re:Invent 2014 最新情報のアップデート
20170413 aws–windows users meetup
AWS Black Belt Online Seminar AWS上でのスピードと高可用性を両立したゲームインフラの構築と事例
AWS Lambda ハンズオン 2-Tier アーキテクチャで未来へ
ゲームプラットフォーム on AWS

What's hot (20)

PDF
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
PDF
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
PDF
AWS Black Belt Techシリーズ Amazon Workspaces
PDF
AWS Blackbelt 2015シリーズ RDS
PDF
AWS Black Belt Tech シリーズ 2015 AWS CLI & AWS Tools for Windows Powershell
PDF
AWS Black Belt Techシリーズ AWS Management Console
PDF
AWS Black Belt Online Seminar 2017 AWS Cognito
PDF
20120625 aws meister-reloaded-sg-vmie-public
PDF
Amazon Simple Workflow Service (SWF)
PDF
AWS Black Belt Techシリーズ AWS SDK
PDF
AWS Black Belt Online Seminar 2017 AWS for Game Developers
PDF
AWS初心者向けWebinar これで完璧、AWSの運用監視
PDF
AWSマイスターシリーズReloaded -Amazon Glacier-
PDF
AWS Black Belt Online Seminar 2016 Amazon WorkSpaces
PDF
Amazon Glacierのご紹介(機能編)
PDF
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
PDF
AWS 初心者向けWebinar AWS上にWebサーバシステムを作ってみましょう~まずは仮想サーバーから[演習つき]
PDF
[AWSマイスターシリーズ] AWS SDK for Java / .NET
PDF
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
PDF
AWS初心者向けWebinar .NET開発者のためのAWS超入門
[AWSマイスターシリーズ] AWS Client Side SDK -Android,iOS & JavaScript-
AWS Black Belt Tech シリーズ 2015 - AWS CloudFormation
AWS Black Belt Techシリーズ Amazon Workspaces
AWS Blackbelt 2015シリーズ RDS
AWS Black Belt Tech シリーズ 2015 AWS CLI & AWS Tools for Windows Powershell
AWS Black Belt Techシリーズ AWS Management Console
AWS Black Belt Online Seminar 2017 AWS Cognito
20120625 aws meister-reloaded-sg-vmie-public
Amazon Simple Workflow Service (SWF)
AWS Black Belt Techシリーズ AWS SDK
AWS Black Belt Online Seminar 2017 AWS for Game Developers
AWS初心者向けWebinar これで完璧、AWSの運用監視
AWSマイスターシリーズReloaded -Amazon Glacier-
AWS Black Belt Online Seminar 2016 Amazon WorkSpaces
Amazon Glacierのご紹介(機能編)
AWS Black Belt Online Seminar 2017 IoT向け最新アーキテクチャパターン
AWS 初心者向けWebinar AWS上にWebサーバシステムを作ってみましょう~まずは仮想サーバーから[演習つき]
[AWSマイスターシリーズ] AWS SDK for Java / .NET
AWS Black Belt Tech シリーズ 2015 - Amazon API Gateway
AWS初心者向けWebinar .NET開発者のためのAWS超入門
Ad

Similar to AWS IoT アップデート 2016.02.16 (20)

PDF
AWS Black Belt Online Seminar 2016 AWS IoT
PDF
Windows 開発者のための Dev&Ops on AWS
PDF
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
PDF
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
PDF
AWS Lake Formation で実現、マイクロサービスのサーバーレスな分散トレーシング
PPTX
AWS が提供する IoT ソリューションと ITS における活用
PDF
01_2021年上半期 AWS IoT サービスアップデート
PDF
AWSにおける モバイル向けサービス及び事例紹介(20151211)
PDF
AWS Mobile SDK利用時のテスト手法
PDF
03_AWS IoTのDRを考える
PDF
Scale Your Business without Servers
PDF
AWS Introduction for Startups
PPTX
DevAx::connect はじめました
PDF
製造業向けSmart Factoryデモと 関連AWSサービスのご紹介
PDF
Amazon Cognito Deep Dive @ JAWS DAYS 2016
PDF
ハイブリットクラウド環境におけるモダンアプリケーション開発
PDF
AWS re:Invent 2019 Recap IoT アップデート
PDF
Smart Store サーバーレスアーキテクチャ編
PDF
20190514 Smart Store - Azure servlerless architecture
PDF
AWS の IoT 向けサービス
AWS Black Belt Online Seminar 2016 AWS IoT
Windows 開発者のための Dev&Ops on AWS
202202 AWS Black Belt Online Seminar AWS SaaS Boost で始めるSaaS開発⼊⾨
IoT@Loft - IoT開発を成功させるためのPoCの進め方と実践
AWS Lake Formation で実現、マイクロサービスのサーバーレスな分散トレーシング
AWS が提供する IoT ソリューションと ITS における活用
01_2021年上半期 AWS IoT サービスアップデート
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWS Mobile SDK利用時のテスト手法
03_AWS IoTのDRを考える
Scale Your Business without Servers
AWS Introduction for Startups
DevAx::connect はじめました
製造業向けSmart Factoryデモと 関連AWSサービスのご紹介
Amazon Cognito Deep Dive @ JAWS DAYS 2016
ハイブリットクラウド環境におけるモダンアプリケーション開発
AWS re:Invent 2019 Recap IoT アップデート
Smart Store サーバーレスアーキテクチャ編
20190514 Smart Store - Azure servlerless architecture
AWS の IoT 向けサービス
Ad

More from Amazon Web Services Japan (20)

PDF
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
PDF
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
PDF
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
PDF
Infrastructure as Code (IaC) 談義 2022
PDF
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
PDF
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
PDF
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
PPTX
20220409 AWS BLEA 開発にあたって検討したこと
PDF
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
PDF
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
PDF
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
PDF
Amazon QuickSight の組み込み方法をちょっぴりDD
PDF
マルチテナント化で知っておきたいデータベースのこと
PDF
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
PDF
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
PDF
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
PDF
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
PPTX
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
PDF
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
PDF
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...
202205 AWS Black Belt Online Seminar Amazon VPC IP Address Manager (IPAM)
202205 AWS Black Belt Online Seminar Amazon FSx for OpenZFS
202204 AWS Black Belt Online Seminar AWS IoT Device Defender
Infrastructure as Code (IaC) 談義 2022
202204 AWS Black Belt Online Seminar Amazon Connect を活用したオンコール対応の実現
202204 AWS Black Belt Online Seminar Amazon Connect Salesforce連携(第1回 CTI Adap...
Amazon Game Tech Night #25 ゲーム業界向け機械学習最新状況アップデート
20220409 AWS BLEA 開発にあたって検討したこと
202202 AWS Black Belt Online Seminar AWS Managed Rules for AWS WAF の活用
202203 AWS Black Belt Online Seminar Amazon Connect Tasks.pdf
SaaS テナント毎のコストを把握するための「AWS Application Cost Profiler」のご紹介
Amazon QuickSight の組み込み方法をちょっぴりDD
マルチテナント化で知っておきたいデータベースのこと
機密データとSaaSは共存しうるのか!?セキュリティー重視のユーザー層を取り込む為のネットワーク通信のアプローチ
パッケージソフトウェアを簡単にSaaS化!?既存の資産を使ったSaaS化手法のご紹介
202202 AWS Black Belt Online Seminar Amazon Connect Customer Profiles
Amazon Game Tech Night #24 KPIダッシュボードを最速で用意するために
[20220126] JAWS-UG 2022初頭までに葬ったAWSアンチパターン大紹介
202111 AWS Black Belt Online Seminar AWSで構築するSmart Mirrorのご紹介
202201 AWS Black Belt Online Seminar Apache Spark Performnace Tuning for AWS ...

AWS IoT アップデート 2016.02.16