2023/4/20

AWS IOT

ref: 就是像 mqtt broker 一樣的東西。
在 AWS 服務上,已經啟動,所以只要取得和他 (IOT broker) 溝通的 url 就可以。
到 aws iot core 管理網頁(Settings),就會知道你的帳號的 endpoint 位址是什麼。
可以 ping 看看...

aws iot 是 mqtt over tls,所以需要 一個 pem.
aws iot console 頁面會自動幫你產生一組 ca pem, pub/priv key.
在左邊 "security -- certificate" ,右邊就會出現在所有的 certification,
用 add certificate -- create new 就會新產生一組。
之後的 download 頁面,把每一個 key, cert, pem file 都 download 下來,只有這一次機會,頁面關掉就沒了。

之後的 certification 頁面就會多出這一個 entry.

AWS IOT 的各個 topic 的 sub/pub/con 都是可以設定/限制的,用 Policy (一個 json file)
進入 某格 certfication entry 後,用 attach policies 來決定讓這個 cert 用那一個 policy .

如果沒有現成的 policy,就要 create 一個,一樣,左邊欄的 "Security -- Policy"
一個沒有任何限制的 policy json file 會是:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "iot:*",
      "Resource": "*"
    }
  ]
}

上面列的 ref 中有 python + paho tls 的 example code.
把source 中的 key, crt, pem path 換成自己的 path, endpoint 也改成自己的 url,就可以 run 了。
他會向 test/date 送出 payload 是 date-time 的字串,所以用 aws iot console -- MQTT test client 的 subscribe 時,要把 MQTT payload display 改成 string,才會正常顯示 (default 是 json)

沒有留言:

張貼留言