Skip to content

分類システム

データ分類システムはTriggerfishshのセキュリティモデルの基盤です。システムに入り、 移動し、または離れるすべてのデータは分類ラベルを持ちます。これらのラベルはデータが 流れる場所を決定します — さらに重要なのは、流れることができない場所を決定することです。

分類レベル

Triggerfishshはすべてのデプロイメントに対して単一の4層の順序付け階層を使用します。

レベルランク説明
RESTRICTED4(最高)最大限の保護が必要な最も機密性の高いデータM&Aドキュメント、取締役会資料、PII、銀行口座、医療記録
CONFIDENTIAL3ビジネス機密または個人の機密情報CRMデータ、財務、HR記録、契約、税務記録
INTERNAL2外部共有を意図しない内部wiki、チームドキュメント、個人メモ、連絡先
PUBLIC1(最低)誰でも見て安全マーケティング資料、公開ドキュメント、一般的なウェブコンテンツ

ライトダウン禁止ルール

Triggerfishshで最も重要なセキュリティ不変条件:

データは等しいか高い分類のチャンネルまたは受信者にのみ流れることができます。

これは固定ルールです — 設定・上書き・無効化することはできません。LLMはこの 決定に影響を与えることができません。 :::

分類階層: PUBLIC → INTERNAL → CONFIDENTIAL → RESTRICTED。データは上方向にのみ流れます。

これが意味すること:

  • CONFIDENTIALデータを含むレスポンスはPUBLICチャンネルに送信できません
  • RESTRICTEDにtaintされたセッションはRESTRICTED以下のどのチャンネルにも出力できません
  • 管理者の上書きなし、エンタープライズの回避策なし、LLMの回避なし

有効な分類

チャンネルと受信者の両方が分類レベルを持ちます。データがシステムを離れようとするとき、 宛先の有効な分類が送信できるものを決定します:

EFFECTIVE_CLASSIFICATION = min(channel_classification, recipient_classification)

有効な分類は2つのうちの_低い_方です。これは、低分類の受信者を持つ高分類チャンネルは 依然として低分類として扱われることを意味します。

チャンネル受信者有効CONFIDENTIALデータを受信できますか?
INTERNALINTERNALINTERNALいいえ(CONFIDENTIAL > INTERNAL)
INTERNALEXTERNALPUBLICいいえ
CONFIDENTIALINTERNALINTERNALいいえ(CONFIDENTIAL > INTERNAL)
CONFIDENTIALEXTERNALPUBLICいいえ
RESTRICTEDINTERNALINTERNALいいえ(CONFIDENTIAL > INTERNAL)

チャンネル分類ルール

各チャンネルタイプには分類レベルを決定するための固有のルールがあります。

Email

  • ドメインマッチング: @company.comからのメッセージはINTERNALとして分類
  • 管理者はどのドメインが内部かを設定
  • 不明または外部ドメインはデフォルトでEXTERNAL
  • 外部受信者は有効な分類をPUBLICに低下

Slack / Teams

  • ワークスペースメンバーシップ: 同じワークスペース/テナントのメンバーはINTERNAL
  • Slack Connectの外部ユーザーはEXTERNALとして分類
  • ゲストユーザーはEXTERNALとして分類
  • 分類はLLMの解釈ではなくプラットフォームAPIから導出

WhatsApp / Telegram / iMessage

  • エンタープライズ: HR ディレクトリ同期に対して照合された電話番号が内部/外部を決定
  • 個人: すべての受信者はデフォルトでEXTERNAL
  • ユーザーは信頼できる連絡先をマークできますが、これは分類の計算を変更しません — 受信者の分類を変更します

WebChat

  • WebChat訪問者は常にPUBLICとして分類(訪問者はオーナーとして確認されることがない)
  • WebChatは公開向けのインタラクションを意図しています

CLI

  • CLIチャンネルはローカルで実行され、認証ユーザーに基づいて分類
  • 直接ターミナルアクセスは通常INTERNAL以上

受信者分類のソース

エンタープライズ

  • ディレクトリ同期(Okta、Azure AD、Google Workspace)が受信者の分類を自動的に設定
  • すべてのディレクトリメンバーはINTERNALとして分類
  • 外部ゲストとベンダーはEXTERNALとして分類
  • 管理者は連絡先またはドメインごとに上書き可能

個人

  • デフォルト: すべての受信者はEXTERNAL
  • ユーザーはインフロープロンプトまたはコンパニオンアプリを通じて信頼できる連絡先を 再分類
  • 再分類は明示的でログ記録される

チャンネルの状態

すべてのチャンネルはデータを運ぶ前に状態機械を通過します:

チャンネル状態機械: UNTRUSTED → CLASSIFIED または BLOCKED
状態データを受信できますか?エージェントコンテキストにデータを送信できますか?説明
UNTRUSTEDいいえいいえ新しい/不明なチャンネルのデフォルト。完全に分離。
CLASSIFIEDはい(ポリシー内)はい(分類付き)レビューされて分類レベルが割り当てられた。
BLOCKEDいいえいいえ管理者またはユーザーによって明示的に禁止。

セキュリティ 新しいチャンネルは常にUNTRUSTED状態になります。エージェント

からいかなるデータも受信できず、エージェントコンテキストにデータを送信することもできません。 管理者(エンタープライズ)またはユーザー(個人)が明示的に分類するまで、チャンネルは 完全に分離されたままです。 :::

分類が他のシステムと相互作用する方法

分類はスタンドアロン機能ではありません — プラットフォーム全体で決定を駆動します:

システム分類の使用方法
セッションtaint分類されたデータにアクセスするとセッションがそのレベルにエスカレート
ポリシーhookPRE_OUTPUTはセッションtaintと宛先の分類を比較
MCP GatewayMCPサーバーのレスポンスはセッションをtaintする分類を持つ
データ系譜すべての系譜レコードには分類レベルと理由が含まれる
通知通知コンテンツは同じ分類ルールの対象
エージェント委任呼び出し先エージェントの分類上限は呼び出し元のtaintを満たす必要がある
プラグインサンドボックスプラグインSDKはすべての出力データを自動分類