AWS IoT Coreの設定
0. はじめに
AWS IoT Core の設定では、AWS IoT コンソールにてモノの作成を行いエンドポイント(メッセージの送受先URL)を取得します。
AWS IoT Core の設定には、次の3つの作業があります。
- AWS IoT コンソールにサインインし AWS IoT Core の設定を行うAWS IoTタブへアクセスします。
- AWS IoT > 管理 > モノタブにてモノの作成を行います。
2-1. モノのプロパティを指定
2-2. デバイス証明書の選択
2-3. セキュリティ ポリシーの作成
2-4. セキュリティ ポリシーの割り当て
2-5. 証明書のダウンロード - AWS IoT > 設定タブにてデバイスデータのエンドポイントを取得します。
1. AWS IoT タブへのアクセス
AWS IoT コンソールにサインインしAWS IoT Coreの設定を行うAWS IoTタブへアクセスします。
AWS IoT コンソールにサインインして下さい。
IAMユーザーを作成している場合は、
IAMユーザーアカウントを用いて下さい。
検索フィールにIoTと入力します。
IoT Coreアイコンをクリックします。
AWS IoT > 接続タブが表示されます。
2. モノの作成
画面左メニューバーのすべてのデバイス⇒モノをクリックします。
AWS IoT > 管理 > モノタブが表示されます。
モノを作成をクリックします。
AWS IoT > 管理 > モノ > モノを作成タブが表示されます。
- 作成するモノの数ペインのラジオボタンにて1 つのモノを作成を選択します。
- 次へをクリックします。
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブのStep1が表示されます。
2-1. モノのプロパティを指定
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブ(Step1)にてモノのプロパティを指定します。
- モノのプロパティペインのモノの名前入力フィールドにモノの名前(Thing Name)を入力します。
チュートリアルではSERIALとします。 - モノのプロパティペインの追加設定に設定する事項はありません。
- Device Shadowペインのラジオボタンにて名前のないシャドウ (クラシック)を選択します。
- 次へをクリックします。
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブのStep2が表示されます。
2-2. デバイス証明書の選択
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブ(Step2)にてデバイス証明書のタイプを選択します。
- デバイス証明書ペインのラジオボタンにで新しい証明書を自動生成 (推奨)を選択します。
- 次へをクリックします。
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブのStep3が表示されます。
ポリシーペインのポリシーを作成をクリックします。
AWS IoT > セキュリティ > ポリシー > ポリシーを作成タブがブラウザの別のタブに表示されます。
2-3. セキュリティ ポリシーの作成
AWS IoT > セキュリティ > ポリシー > ポリシーを作成タブにてセキュリティ ポリシーを作成します。
- ポリシーのプロパティペインのポリシー名入力フィールドにポリシー名を入力します。 チュートリアルではSERIAL-Policyとします。
- ポリシードキュメントペインのビルダー/JSONの選択はビルダーのままとします。
- ポリシードキュメントペインのポリシー効果プル ダウンメニューにて許可を選択します。
- ポリシードキュメントペインのポリシーアクションプル ダウンメニューにて * を選択します。
- ポリシードキュメントペインのポリシーリソース入力フィールドに * と入力します。
- 作成をクリックします。
AWS IoT > セキュリティ > ポリシータブが表示されます。
AWS IoT > セキュリティ > ポリシータブは、ここで閉じてしまっても構いません。
ブラウザのタブ操作によりAWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブを表示させます。
2-4. セキュリティ ポリシーの割り当て
AWS IoT > 管理 > モノ > モノを作成 > 1 つのモノを作成タブにてセキュリティ ポリシーを割り当てます。
- ポリシーペインにてセキュリティ ポリシーの作成で作成したSERIAL-Policyを選択します。
- モノを作成をクリックします。
証明書とキーをダウンロードする画面がポップアップされます。
2-5. 証明書のダウンロード
セキュリティ ポリシーの割り当てによりポップアップ画面より証明書とキーをダウンロードします。
- デバイス証明書のダウンロードをクリックし <32bitのハッシュコード>-certificate.pem.crtをダウンロードします。
デバイス証明書がダウンロードできるのは、この時点のみです。 - パブリックキーファイルのダウンロードをクリックし <32bitのハッシュコード>-public.pem.keyをダウンロードします。
パブリックキーファイルをがダウンロードできるのは、この時点のみです。チュートリアルでは使用しませんが念のためダウンロードしておきます。 - プライベートキーファイルのダウンロードをクリックし <32bitのハッシュコード>-private.pem.keyをダウンロードします。
プライベートキーファイルがダウンロードできるのは、この時点のみです。 - ルート CA 証明書のRSA 2048 ビットキー: Amazon ルート CA 1のダウンロードをクリックしAmazonRootCA1.pemをダウンロードします。
ルート CA 証明書は後でamazon trust serviceのAmazonRootCA1.pemからダウンロードすることができます。 - 完了をクリックします。
ここで <32bitのハッシュコード>とは64文字の16進数です。
(e.g. f308184f4d6216a23003b517d60a3ab439f6f3607fe4ebee4cec14677a3f5098)
AWS IoT > 管理 > モノタブが表示されます。
3. デバイスデータエンドポイントの取得
AWS IoT > 設定タブにてデバイスデータのエンドポイントを取得します。
画面左メニューバーの設定をクリックします。
AWS IoT > 設定タブが表示されます。
デバイスデータエンドポイントペインのエンドポイントをコピーし控ておきます。
デバイスデータエンドポイントは、次章「OpenBlocks IoTの設定」の送受信設定で必要になります。
なお、サーバー認証のページに記載されている通り、
AWS IoT Core には iot:Data と iot:Data-ATS の 2 つの異なるデータエンドポイントタイプがあります。
チュートリアルに従い新たにデバイス(モノ)を作成した場合は問題ありませんが、過去に作成したデバイスを用いる場合はデータエンドポイントタイプを確認して下さい。
データエンドポイントタイプはデバイスデータエンドポイントのプリフックスに -ats. が在るか無いかを見て判別することができます。
データエンドポイントタイプがiot:Dataの場合はルート CA 証明書として
Amazon ルート CA 1に代えてVerVeriSign Class 3 Public Primary G5 Root CA 証明書を用いて下さい。