Upgrade to Pro — share decks privately, control downloads, hide ads and more …

IoTシステムの運用効率化に取り組もう! ― 回線管理とデバイス設定を自動化するための SOR...

SORACOM
December 17, 2024

IoTシステムの運用効率化に取り組もう! ― 回線管理とデバイス設定を自動化するための SORACOM API とプラットフォーム機能の活用

SORACOM

December 17, 2024
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

  1. 服部 政洋 masa Hattori ソリューションアーキテクト 株式会社ソラコム @toolyee 経歴:HWベンダー、クラウド事業者、SaaS などの技術営業畑10数年 ->

    ソラコム 駐在主夫経験あり、主夫歴 1.5年 「大阪生まれ大阪育ち、フルリモートなのでオフィスは自宅(大阪)です!」 自己紹介 技術評論社 知識地図シリーズ IoTの知識地図 好評発売中です! 7章セキュリティ について書きました!
  2. SORACOM は IoT の「つなぐ」を簡単に IoT デバイス クラウドサービス ✔ 遠隔操作 ✔

    メンテナンス ✔ 蓄積・見える化 ✔ アラート通知 センサ キット IoT 通信 IoT SIM LPWA パートナー デバイス パートナー クラウド Wi-Fi / 有線 3G / LTE / 5G LTE-M 通信 デバイス クラウド型 カメラ 衛星通信 (Tech. Preview)
  3. 本日のお話 • IoT システムの「運用」とは? • IoT システム運用 効率化のポイント • 開発〜キッティングフェーズの効率化

    • 回線の調達と初期設定 • デバイス管理のためのID検討 • 検品〜本番運用, 回収フェーズの効率化 • 運用体制のための権限管理 • 回線状態と通信の監視、リモート保守 • まとめ
  4. IoTシステム x 回線のライフサイクル 回線 調達 製造 検品 在庫 流通 販売

    本番 運用 解約 回収 実際にユーザーが利用を開始する「本番運用」の前から始まる PoC や 導入期の数台であれば、体系的な管理や その効率化の必要性が感じられませんが、 回線数やサービスの規模が拡大する際には効率化が不可欠です
  5. IoTシステムならではの特徴とは? 1. 脅威の影響範囲・影響度合いが大きい ( IoT は現実社会に実装され、社会活動の歯車の1つに ) 2. IoT機器のライフサイクルが長い 3.

    IoT機器に対する監視が行き届きにくい 4. IoT機器側とネットワーク側の環境や特性の相互理解が不十分 5. IoT機器の機能・性能が限られている 6. 開発者が想定しなかった接続が行われる可能性がある [ IoTセキュリティガイドライン ver 1.0 , IoT 推進コンソーシアム 総務省・経済産業省 ]より引用 https://www.soumu.go.jp/main_content/000428393.pdf IoT 機器は手の届きにくい多様な環境に配備され、 それが多数あり、長期間運用する前提となる
  6. IoTシステム x 回線のライフサイクル 課題例 回線 調達 製造 キッティング 検品 在庫

    流通 販売 本番 運用 解約 回収 「回線の調達からキッティングをシステム化・自動化したい」 「シリアルNo. とSIMのIDの紐づけはいつ・どうすれば?」 「検品や在庫期間にあわせて回線を利用・中断したい」 「ユーザーの利用開始を検知したい」 「異常を検知したい」 「契約終了で..」
  7. SORACOM IoT SIM の “ステータス” と料金 参考サイト:ご利用料金 - SORACOM IoT

    SIM , ご利用料金 - 特定地域向け IoT SIM SORACOM IoT SIM (グローバルカバレッジ) 特定地域向け IoT SIM (日本カバレッジ)
  8. SORACOM IoT SIM の “ステータス” と料金 参考サイト:ご利用料金 - SORACOM IoT

    SIM , ご利用料金 - 特定地域向け IoT SIM 回線 調達 製造 キッティング 検品 在庫 流通 販売 本番 運用 解約 回収 準備完了 (ready) SORACOM IoT SIM (グローバルカバレッジ) の SIM ステータス 運用例 使用中 (active) 利用開始待ち (standby) 使用中 (active) 解約済み (terminated) 通信の開始時に自動的に回線が開通 (使用中に遷移) ユーザーコンソールや API・CLI で随時状態を変更
  9. IoTシステム運用 効率化のポイント • IoTデバイスを管理するための ID 管理方法を計画する → 顧客 - デバイス

    - 回線 の ID を正確に管理する • IoTデバイス量産・出荷時の初期設定を外部から取得する → キッティングの手間を削減し、出荷後の変更も可能に • 運用体制にあわせたシステムの権限管理を実施する → 他部門や協力会社などを上手に適切に巻き込む • 顧客との契約状態に合わせて回線管理を自動化する → 回線状態の変更や、変更の通知から始めていく • 異常や不正な状態を検知するために通信量を監視する →平時の通信量を把握すれば、異常や不正を把握し易くなる
  10. 運用効率化のためのプラットフォーム機能 • IoTデバイスを管理するための ID 管理方法を計画する → SORACOM Beam / Funnel

    / Funk による リクエストの ID 付加 • IoTデバイス量産・出荷時の初期設定を外部から取得する → SORACOM Air (SIM) の タグ と メタデータサービス、イベントハンドラー • 運用体制にあわせたシステムの権限管理を実施する → SORACOM Access Management: SAM によるアクセス管理 • 顧客との契約状態に合わせて回線管理を自動化する → イベントハンドラー や タグ 、 SORACOM API / SORACOM CLI • 異常や不正な状態を検知するために通信量を監視する → イベントハンドラー や タグ 、 SORACOM API / SORACOM CLI
  11. 運用効率化のためのSORACOM 検討ステップ • IoTデバイスを管理するための ID 管理方法を計画する → SORACOM Beam /

    Funnel / Funk による リクエストの ID 付加 • IoTデバイス量産・出荷時の初期設定を外部から取得する → SORACOM Air (SIM) の タグ と メタデータサービス、イベントハンドラー • 運用体制にあわせたシステムの権限管理を実施する → SORACOM Access Management: SAM によるアクセス管理 • 顧客との契約状態に合わせて回線管理を自動化する → イベントハンドラー や タグ 、 SORACOM API / SORACOM CLI • 異常や不正な状態を検知するために通信量を監視する → イベントハンドラー や タグ 、 SORACOM API / SORACOM CLI 開発〜 キッティング フェーズ 検品〜 本番,回収 フェーズ
  12. IoTシステム x 回線のライフサイクル 課題例 回線 調達 製造 キッティング 検品 在庫

    流通 販売 本番 運用 解約 回収 「回線の調達からキッティングをシステム化・自動化したい」 「シリアルNo. とSIMのIDの紐づけはいつ・どうすれば?」 「検品や在庫期間にあわせて回線を利用・中断したい」 「ユーザーの利用開始を検知したい」 「異常を検知したい」 「契約終了で..」
  13. よくある利用シナリオ - IoTデバイスの出荷プロセス - SIM (回線契約) は 管理部門 または IoT

    ビジネス主幹部門が 管理し、キッティングは製造部門や外部ベンダーが担当 - どの SIM がどの IoT デバイスに紐づいているか管理したい 回線の調達からIoTデバイスの初期設定まで 管理部門 キッティング 担当部門 納品先
  14. 想定プロセス 1. 管理部門が回線を調達 (ソラコムに注文, 受取り) 2. 管理部門が回線の初期設定を実施 3. キッティング担当部門がデバイスの初期設定を実施 回線の調達からIoTデバイスの初期設定まで

    管理部門 キッティング 担当部門 納品先 作業内容 - IoT SIM の購入 - IoT SIM の登録 - IoT SIM の名前 (タグ) の設定 - IoT SIM の SIM グループへの紐づけ - 速度設定やイベントハンドラーの設定
  15. SIM の発注から 初期設定を自動化する 参考ガイド:SORACOM API 利用ガイド - SIM の発注から管理を自動化する 作業内容

    - IoT SIM の購入 - IoT SIM の登録 - IoT SIM の名前 (タグ) の設定 - IoT SIM の SIM グループへの紐づけ - 速度設定やイベントハンドラーの設定 ケース B すべて自動化する 社内システムなど から SORACOM API で発注から SIM 操作 を実行する ケース A 発注はコンソール 初期設定を自動化 SIM の登録から タグの設定や グループ設定を SORACOM CLI で実施
  16. 2. 管理部門が回線の初期設定を実施 直販で購入した SIMの一覧を取得(API / CLI) SIM の初期設定を API や

    CLI で実行 (名前の設定、グループ設定、速度設定、 イベントハンドラー) GET /orders/{order_id}/subscr iber IMSI : 440103000111111 IMSI : 440103000222222 IMSI : 440103000333333 通信が開始したら、指定のAWS Lambdaを実行する、な ど
  17. SORACOM API • SIMの見積もり、発注 • 回線の中断/解約 • 通信速度の変更 • 通信量/利用料の取得

    • タグの編集、参照 • SAM(IAM) の管理 • ファイルのUL/DL • カメラの操作 • パケットキャプチャ • ポートフォワード • 監査ログの取得 etc 参考ガイド:SORACOM API リファレンス , SORACOM API 利用ガイド
  18. オーダーIDから購入したSIMのSIM IDを 出力する SORACOM CLI (コマンドラインツール) の利用 SIM を SIM

    グループに所属させる > soracom orders list-subscribers --order-id {your_order_id} | jq -r '.orderedSubscriberList[0].simId' > soracom sims set-group --sim- id {your_sim_id} --group-id {your_group_id} SIM の名前 (名前タグ) を設定する > soracom sims put-tags --sim-id {your_sim_id} --body '[{"tagName":"name","tagValue":"{ your_sim_name}"}]' SIM の速度クラスを変更する > soracom sims update-speed- class --sim-id {your_sim_id} -- speed-class 's1.standard' 参考ガイド:SORACOM CLI 利用ガイド
  19. 使用例 ~ 使いすぎ(異常や不正)の検知 や 利用開始と終了の処理の自動化 - SIMの通信量が 1GB/日 を超えたら、低速に制限する -

    未使用のSIMが初めて使われたら、メールを飛ばす、顧客システムに連携する - SIMの有効期限が切れたら AWS Lambda や SORACOM Flux を呼び出す SORACOM Air イベントハンドラー 監視対象 (何に対して) ルール (どうなったら) アクション (何をする) SIM サブスクライバー グループ オペレーター 通信量が XX を超えたら 回線ステータスが変更されたら 回線の有効期限が切れたら …etc メールを送る 速度クラスを変更する 回線のステータスを変更する 指定のURLにリクエストを送る AWS Lambda を呼び出す 指定のイベントをトリガーに、様々な処理を呼び出せる 回線の監視 & 自動化機能
  20. 想定プロセス 1. 管理部門が回線を調達 (ソラコムに注文, 受取り) 2. 管理部門が回線の初期設定を実施 3. キッティング担当部門がデバイスの初期設定を実施 回線の調達からIoTデバイスの初期設定まで

    管理部門 キッティング 担当部門 納品先 作業内容 - IoT デバイスへの SIM セットアップ - IoT デバイスと SIM 情報を販売管理システムに登録 - 通信量の監視を設定 - IoT デバイスの初期セットアップ - 回線の一時利用停止 (IoT デバイスの電源OFFと梱包)
  21. データの 流れの定義 センサーやモニタリング機 器 外から駆動可能なデバイス カメラや映像デバイス クラウドサービス 外部データ 通知サービス AI

    プロンプト SORACOM Flux ローコード IoT アプリケーションビルダー デバイス, AI, クラウド間のデータの流れを自在に制御し IoT アプリケーションを構築 詳細は SORACOM Flux webページへ
  22. 通信が Ready -> Active になったタイミングで イベントハンドラーが Flux アプリに連携 • Flux

    が SORACOM API を利用して... • IMEI ロック を設定 • 通信量の監視イベントハンドラーを設定 • 解約期限を設定 • IMSIとIMEIをクラウドに送信し、クラウド側で IDの紐づけを実施... SORACOM Flux を活用する SORACOM API を呼ぶためだけの クラウドの用意は不要!
  23. SORACOM Flux アプリ作成イメージ イベント ハンドラー SORACOM API アクション putSimTags API

    で SIM のタグを編集 Slack 通知 アクション 処理結果を チャットに通知 監視対象: SIM ルール: SIMのステータス変更 アクション: 指定のURLに リクエスト*を送る *SIM ID も併せて送信 コーディング不要で従来のユーザーコンソールの操作を自動化! API/マニュアル実行 イベントソース incoming webhook 用 の webhook URL を作成し イベントハンドラからの リクエストを待ち受ける 参考ガイド:イベントハンドラー アクションタイプ一覧, SORACOM Flux - Incoming Webhook を使用したデータの送信 SORACOM Flux アプリ
  24. デバイスの起動時などに初期設定をさせる IoT デザインパターン : デバイスや環境に依存する設定情報を SORACOM から取得 参考ガイド:IoT デザインパターン -

    デバイスや環境に依存する設定情報を SORACOM から取得する デバイスは、認証済み のセルラー通信内で 簡単にタグ情報を取得 できます ユーザーコンソールで SIM のタグにデバイス の設定項目などの 文字列などを設定し 初回起動時に取得 IoT デバイスは共通のキッティングで出荷し、個別設定は初回通信時に実施
  25. GPSデバイスからクラウドへのデータ送信 GPSデバイス クラウド { “device_id”: “abc”, “latitude”: …, “longitude”:…, “timestamp”:

    … } device_idが詐称されて いないことはどうやって 担保する? device_id 誰が/いつ、device_idの 設定する?
  26. GPSデバイスからクラウドへのデータ送信 GPSデバイス クラウド { “device_id”: “abc”, “latitude”: …, “longitude”:…, “timestamp”:

    … } device_idが詐称されて いないことはどうやって 担保する? device_id 誰が/いつ、device_idの 設定する? クライアント 証明書
  27. GPSデバイスからクラウドへのデータ送信 GPSデバイス クラウド { “device_id”: “abc”, “latitude”: …, “longitude”:…, “timestamp”:

    … } device_idが詐称されて いないことはどうやって 担保する? device_id 誰が/いつ、device_idの 設定する? クライアント 証明書 証明書を安全に配布する にはどうすればいい?工 場で焼き付ける?
  28. GPSデバイスからクラウドへのデータ送信 GPSデバイス クラウド { “device_id”: “abc”, “latitude”: …, “longitude”:…, “timestamp”:

    … } x-soracom-sim-id: “12345…” { “device_id”: “abc”, “latitude”: …, “longitude”:…, “timestamp”: … } 回線IDであるSIM IDをリクエスト に付与してくれる! 利用者は触れることができないの で改ざん不可能。
  29. デバイス管理システム SORACOM Beam経由のデバイスからのメッセージ ”device_id”: ”abc” = “sim-id”: “12345…” IMSIをもとに device_idをルックアップ

    { ”device_id”:”abc”, “latitude”: …, “longitude”:…, “timestamp”: … } メッセージにサーバー サイドでdevice_idを付 与! IMSIとデバイスをひもづけておけば・・・ x-soracom-sim-id: “12345…” { “latitude”: …, “longitude”:…, “timestamp”: … }
  30. IoTシステム x 回線のライフサイクル 課題例 回線 調達 製造 キッティング 検品 在庫

    流通 販売 本番 運用 解約 回収 「回線の調達からキッティングをシステム化・自動化したい」 「シリアルNo. とSIMのIDの紐づけはいつ・どうすれば?」 「検品や在庫期間にあわせて回線を利用・中断したい」 「ユーザーの利用開始を検知したい」 「異常を検知したい」 「契約終了で..」
  31. ユーザーコンソール(管理画面)へのアクセスを制限できます ユーザーアクセスの制御機能 (SAM機能) 利用例 - 全て参照のみ - 料金のみ参照 - 特定のSIMのみ

    変更可能 参考ブログ:SORACOMのアクセス管理(IAM)機能「SAMユーザー」の基本と実践例 - SORACOM 公式ブログ https://blog.soracom.com/ja-jp/2022/07/22/sam-user-project-example/
  32. SORACOM SAM機能, 必須の設定 1. 最初に必ず ルートユーザー (アカウント作成時に自動的に作成さ れる管理ユーザー) に多要素認証を設定する 参考ガイド

    : 多要素認証を有効化する -SORACOM Users https://users.soracom.io/ja-jp/docs/mfa/enable/ -> Google Authenticator, Microsoft Authenticator などのスマートフォン認証アプリとご利用下さい 2. ルートユーザーを常用せず、利用者ごとに必要な権限を付与した SAMユーザーを利用する 参考ガイド : アクセス管理 (SORACOM Access Management: SAM) -SORACOM Users https://users.soracom.io/ja-jp/docs/sam/ 参考ブログ:SORACOMのアクセス管理(IAM)機能「SAMユーザー」の基本と実践例 - SORACOM 公式ブログ https://blog.soracom.com/ja-jp/2022/07/22/sam-user-project-example/
  33. SORACOM SAM機能, 活用のコツ • SAM デフォルト権限を設定する → 例えば テンプレート [

    SIM管理画面、イベントハンドラーの参照のみ許可 ] を設定し、新規作 成の SAM ユーザーには基本機能の参照権限のみ与えられるようにしておく 参考ガイド : SAM デフォルト権限を設定する https://users.soracom.io/ja-jp/docs/sam/default-permission/ • スイッチユーザー機能を利用して必要な操作をテストし、 不足する権限を追加しながらSAMユーザーを作成する 参考ガイド : スイッチユーザー https://users.soracom.io/ja-jp/docs/switch-user/ 参考ガイド : SAM のパーミッション構文のサンプルはありますか? https://support.soracom.io/hc/ja/articles/115001241692-SAM- %E3%81%AE%E3%83%91%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E6%A7%8B%E6%96%87%E3%81%AE%E3 %82%B5%E3%83%B3%E3%83%97%E3%83%AB%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B
  34. イベントハンドラー 利用イメージ 変数で SIM を識別 (自動的に タグや ID が補完される) [

    SIM ${tags.name} が使用中になりました -simid ${simId} ] 回線のステータス切り替えを検知し メールや外部システムに連携
  35. オンデマンドリモートアクセス SORACOM Napter メーター (ガス・電気) 自転車 発電機 温度計 POSレジ 計測器

    Wifi LAN セルラー 通信 SORACOM Napter SORACOM ユーザーコンソール 認証済み ユーザー 1. SIMへのアクセスを リクエスト 2. 一時的なアクセス用 のIPアドレス等を取得 悪意ある攻撃者 3. 正しい接続元のみ アクセスを転送 ? x ★ 外部からデバイス への直接通信は遮断 出荷後にリモートメンテナンスする SSH, HTTP, VNC, RDP etc
  36. 本日のまとめ • IoT システムの規模が拡大する前に、SORACOM プラットフォー ム機能の活用で 運用が効率化できることを知っておいて下さい • SORACOM API

    / CLI で SIM の発注から初期設定まで すべて自動化が可能です • IoT デバイスの製造からキッティング、検品や運用負荷を削減 するために、メタデータサービスやSORACOM Beam などの活 用をぜひご相談下さい • イベントハンドラーは自動化の第一歩! • ちょっとだけクラウドがあれば、、なときは SORACOM Flux !
  37. SORACOM の願い クラウド ⇒ 多くの Web サービス SORACOM ⇒ 多くの

    IoT システム 日本から、世界から、たくさんの IoT プレイヤーが生まれますように