
Supabase でフィールドレベルの検索可能暗号化が利用可能に
CipherStash との統合により、Supabase プロジェクトに暗号化データの検索機能を持つフィールドレベルの暗号化を追加できるようになった。
CipherStash は Postgres 向けデータレベルアクセス制御(DLAC)プラットフォームで、Supabase との統合が 2026 年 7 月 9 日に利用可能になった。チームは CipherStash を使用して、アプリケーション層で機密フィールドを値ごとに一意のキーで暗号化し、復号化せずに暗号化データに対する検索やジョイン処理を実行できる。鍵は CipherStash のゼロナレッジキー管理サービス ZeroKMS を通じてユーザー制御下に保たれるため、CipherStash も Supabase も平文データにアクセスできない。
統合の仕組み
Supabase 統合により、スキーマを変更することなく、暗号化された Supabase SDK ラッパーを使用してどの Supabase プロジェクトにもフィールドレベルの暗号化を追加できる。セットアップは npx stash init --supabase という 1 つの CLI コマンドで完了する。
暗号化はデータがデータベースに到達する前にアプリケーション内で行われる。各値は密文と Searchable Encrypted Metadata(SEM)を含む単一の JSON ペイロードとして保存される。クエリはデータベースへ向かう際に SEM に変換され、Postgres は保存された SEM と照合する。WHERE 句、あいまい文字列マッチング、ORDER BY、JSON クエリはすべて暗号化データに対して機能し続ける。
キー管理とアクセス制御
暗号化された各値には、その読み取り権者と読み取り条件を規定するポリシーが付加される。ポリシーはクエリ層ではなく復号化時に実施される。各暗号化値は独自のキーを取得し、ZeroKMS を通じてオンデマンドで導出される。キーを複数のリージョンに分割でき、FedRAMP や IL4 といったフレームワークを含むデータレジデンシー要件に対応できる。
プロキシオプション
CipherStash Proxy は、SDK が適さない場合のセキュアなオプションを提供する。アナリティクスジョブ、管理者ツール、他言語のバックグラウンドワーカー、またはアプリケーション外での直接的なデータベースアクセスが該当する。プロキシは Postgres ワイアプロトコルを話し、暗号化と復号化を透過的に処理する。
筆者の見立て
- HIPAA、GDPR、SOC 2 の規制対象チームにとって、Postgres と Supabase の検索機能を保持しながらコンプライアンスレビューを短縮でき、侵害時の影響範囲を削減できる可能性を示唆している。
- CipherStash が第 3 の選択肢として位置付けられていると解釈している。
この記事は元記事の事実のみに基づいて自動生成されました。
出典
Supabase 「Searchable field-level encryption on Supabase with CipherStash」https://supabase.com/blog/searchable-field-level-encryption-with-cipherstash