セキュリティと信頼性
FacilityOS は、誤ったコマンドや読み取りの欠落が現実の結果につながるサイトのために設計されています。以下のルールは、運用手順に任せるのではなく、プラットフォームが強制します。
すべての変更は 8 ステップを経ます
- 要求
- 検証
- 承認
- プレチェック
- 実行
- 読み戻し
- 確認
- 完了
- 変更を要求した本人は、その変更を承認できません。
- 機器が手動状態または故障状態にあるとき、あるいはデータが信頼できないときは、書き込みはブロックされます。
- 成功かどうかは読み戻しで判断します。読み戻しがない場合、結果は「不確定」と表示され、「完了」になることはありません。
- 非常停止:どのロールでも押すことですべての書き込みを即座に停止できます。解除できるのはマネージャーのみです。
生命安全は監視のみで、制御は決して行いません
火災報知、ガス監視システムの遮断、ガスキャビネットの自動遮断、非常用電源の切替は、常に、リスティングまたは認証を受けたシステム自身が実行します。FacilityOS はこれらを監視し、期待された連動が期限内に実際に行われたかを確認し、適切な担当者に通知します。これらに取って代わることはなく、コマンドを送ることも一切ありません。電気保護リレーも読み取り専用です。
セキュリティ設計
- パスワードは bcrypt で保存。サインイン失敗でアカウントがロックされ、リクエストは IP ごとにレート制限されます。Microsoft Entra ID のシングルサインオンに対応し、すべての権限はサーバー側で検証されます。
- プラットフォームからゲートウェイへ:TLS のみで、ゲートウェイごとに 1 アカウント。ゲートウェイに送るすべてのコマンドには Ed25519 署名とリース世代(lease epoch)が付き、リプレイや古いノードによる制御を防ぎます。
- 機器の認証情報と通知用シークレットは暗号化されます(X25519 + HKDF + AES-GCM)。API はこれらを返さず、ログにも表示されません。
- 監査ログは、改ざんを検証できるハッシュチェーンです。監査テーブルは追記専用です。
- Web アプリには Content Security Policy とセキュリティヘッダーを設定。送信する通知は、内部ネットワークやクラウドのメタデータアドレスに到達できません(SSRF 対策)。
- セッションは 2 時間操作がないとサインアウトされます。
- 複数回のセキュリティレビューを完了しており、その指摘事項と修正が記録されています。
信頼性
- 制御は現場に残ります:プラットフォームが切断されても、PLC と DDC が機器を動かし続けます。
- ゲートウェイは外向きにのみ接続するため、サイトで受信ポートを開ける必要はありません。
- ストアアンドフォワード:停止中、ゲートウェイはすべての読み取り値をディスク上の永続ジャーナルに保持し(既定では最大 30 日または 2 GB)、溜まったデータを元の順序で送信します。失われることも二重に保存されることもなく、あふれた分は報告され、欠測として表示されます。
- 古いデータには「古い」と表示され、トレンドでは欠測として表示されます。値を作り出すことはありません。
- 自動引き継ぎ付きのマルチノード プライマリ/スタンバイまたはアクティブ-アクティブによる高可用性。バックアップとリストア。Prometheus メトリクス。
ガードレール付きの AI
AI アシスタントは既定でオフであり、有効にするにはプラットフォーム、顧客、サイトの 3 者すべてがオンにする必要があります。送信される内容は事前にマスキングされ、認証情報や個人データは含まれません。API キーは暗号化され書き込み専用で、すべてのリクエストは監査されます。公開デモはローカルのシミュレーションのみを使用します。