ESP32でAWS IoT
目的
AWS IoTのShadowを操作して、クラウドとESP32で連携する。ということをやりたい。
おそらく↓の二つが必要
- AWS IoTでthinkgを作成、証明書の発行
- ESP32からshadowへアクセスするプログラムの作成
今回は、AWS IoT側の設定。
AWS側の設定
- モノの作成 AWS IoT > 管理 > 作成 > 単一のモノを作成する
任意の名前とタイプを作成。 タイプは特別な設定はなし。 他の、グループ、属性などは指定なし。
で、次へ。
1-Click 証明書作成 (推奨)の[証明書の作成]で証明書を作成したら、4つすべてダウンロード。 この時しかダウンロードできないので、thingの名称とセットで保存しておくこと。 (パグリックキーは使わない?)
証明書をダウンロードしたら、[有効化]して完了。ポリシーのアタッチは後ほど。
ポリシーの作成とアタッチ
AWS IoT > 安全性 > ポリシー の画面右上の[作成] 任意の名前を入力して、アドバンストモードに変更 以下の内容で、ポリシーを作成
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:*", "Resource": "*" } ] }
作成。
先に作成したモノに、ポリシーをアタッチします。 AWS IoT > 管理 > モノ で先ほど作成したモノを選択。
セキュリティ > 証明書を選択 > ポリシー
画面右上の、アクション > ポリシーのアタッチ 作成した、ポリシーにチェックを入れてアタッチ。
以上で、完了。 これで、ダウンロードした証明書の類を使って、ESP32などのIoTデバイスからアクセスできるはず。
次回、ESP32から、MQTT接続、shadowを操作する方法を書きたいと思います。