個人データには、なぜ 100% クライアントサイドのツールが自己ホストの SaaS より安全なのか

「Web 上のツール」を作る2つの方法

Web ツールは、あなたのデータを2つの場所のどちらかで処理できます。サーバー側の SaaS ツールは、あなたが入力したものを受け取り、どこかのマシンで計算し、結果を返します。クライアントサイド(client-side)ツールは完全にあなたのブラウザ内で動きます:データはあなたの端末を決して離れません。ユーザーには両者は同じに見えます——枠、ボタン、結果——が、データセキュリティの性質は正反対です。

ここでの論点は狭く構造的です:一回限りの個人データには、クライアントサイド処理のほうが自己ホストの SaaS 同等物より安全です。クライアントサイドの開発者がより注意深いからではなく、データが物理的にどこへ行くかのためです。

決して送らないデータは漏洩しえない

データ保護で最も古い原則はデータ最小化(data minimisation)です:最も安全なデータは、決して収集・送信・保存しないデータです。これは GDPR のような規制の中核でもあり、個人データを保持しないことを最強の保護として扱います。

SaaS ツールは定義上、あなたの入力をサーバーで受け取ります。データはネットワークを渡り、処理中サーバーのメモリに置かれ、しばしばリクエストログを通り、時にキャッシュされたりディスクに書かれたりします。そのどれもが漏洩しうる場所です——第三者に送られたログ、公開可読のまま残されたバックアップ、ホストの侵害。クライアントサイドツールはあなたのブラウザのメモリで計算し、サーバーへ何も書き戻さないので、漏洩すべきサーバー側のコピーがそもそもありません。

攻撃面:サーバー対ブラウザのタブ

SaaS ツールの攻撃面は大きく、共有されています。サーバーの OS、Web フレームワーク、データベース、ホスティングアカウント、CI/CD パイプライン、すべての依存関係、アクセス権を持つすべての管理者を含みます。そのどれか1つを侵害すれば、全ユーザーのデータを一度にさらせます——一度の侵害、多数の被害者。この集中こそ、中央データストアがこれほど魅力的な標的である理由です。

クライアントサイドツールは、ブラウザのサンドボックス内で、単一の端末で仕事をします。そこの侵害は1人のユーザーに影響し、ツールは盗むべき中央の宝庫を持ちません。この非対称さが要点です:サーバーの侵害は全員を害する単一障害ですが、隔離された局所処理には勝ち取るべき大当たりがありません。

「自己ホスト」が直すもの、直さないもの

SaaS ツールを自己ホストすること——ベンダーのではなく自分のサーバーで動かすこと——は、第三者信頼の問題を取り除きます。もう外部企業にデータを預けなくてよい。しかしアーキテクチャはそのままです:データは依然サーバーへ行き、依然メモリ・ログ・ディスクに置かれ、そして今度はあなたが OS のパッチ当て、TLS の設定、バックアップの保護、アクセス管理を担います——たいてい専任ベンダーより少ないセキュリティ資源で。

つまり自己ホストはベンダーリスクを運用リスクと交換します。あなたのデータが溜まる場所としてのサーバーを取り除きはしません。クライアントサイド処理はその溜まり場を完全に取り除きます:経路に、固めたり侵害されたり誤設定したりするサーバーがそもそもありません。

正直なトレードオフ

クライアントサイドは魔法の杖ではなく、そうでないふりは不誠実です。端末をまたぐ本当の協調や同期にはサーバーが要ります——純粋なクライアントサイドは人と人の間で状態を共有できません。非常に重い計算、たとえば大きな機械学習モデルは、ブラウザのタブにできることを超えうる。そしてあなたは依然ページのコードを信頼せねばなりません:悪意ある、または侵害されたスクリプトはクライアントサイドでもデータを持ち出せます。だから強固なContent-Security-Policy、サブリソース完全性、検証可能な「ネットワーク呼び出しなし」の主張が重要です。

その最後の点はあなたの防御でもあります。処理が局所なので、あなたはそれを検証できます:ブラウザのネットワークタブを開き、データがアップロードされていないことを確認してください。賢明な規則は、共有が不要な一回限りの個人データ作業——トークンの整形、JWT のデコード、給与の計算——にはクライアントサイドを優先し、機能が本当に必要とするときだけサーバーを受け入れることです。

要点

一回限りの個人データ作業には、完全にブラウザ内で処理するツールを優先すること。 アップロードがなければ、漏洩すべきサーバー側のコピーもありません。

主張を検証すること、前提にしないこと。 ネットワークタブを開き、データがページを決して離れないことを確認します。

自己ホストは第三者信頼を減らすが、サーバーを攻撃面として残す——そしてセキュリティ作業をあなたに移します。

機微なデータの最も安全なコピーは、決してあなたの端末を離れなかったものです。

本サイトはその原則の上に作られています: ツールはクライアントサイドで動き、アカウントはなく、あなたが入力したものをサーバー側に保存しません。