デバイス認証

認証用パラメータ

Legs ではクライアントに設定した共通のシークレットキーを使ってデバイスの認証を行います。認証に関わるパラメータは以下のものがあります。

パラメータ 概要
secret サーバーからランダムに払い出されるアカウント内共通のキー
device_name デバイスの個体を識別するための文字列。デフォルトではMACアドレスが使用される。

device_name についてもクライアントの設定で任意の値を設定することが可能です。ただし個体識別のためアカウント内でユニークである必要があります。

認証の流れ

認証はでデバイスがサーバーに対してWebSocketの接続要求を行う際に行われます。

auth

  1. クライアントは device_namesecret からハッシュ値を生成しサーバーに送信します。
  2. サーバーは送られてきた device_name と自身に保存されている secret からハッシュ値を検証します。
  3. 検証完了後WebSocketによる接続が開始されます。同時にクライアントに対してdevice_idが通知されます。