Skip to content

Sistema de classificacao

O sistema de classificacao de dados e a base do modelo de seguranca do Triggerfish. Cada dado que entra, se move ou sai do sistema carrega um rotulo de classificacao. Esses rotulos determinam para onde os dados podem fluir -- e, mais importante, para onde nao podem.

Niveis de classificacao

O Triggerfish usa uma unica hierarquia ordenada de quatro niveis para todas as implantacoes.

NivelPostoDescricaoExemplos
RESTRICTED4 (mais alto)Dados mais sensiveis que exigem protecao maximaDocumentos de fusoes e aquisicoes, materiais de conselho, PII, contas bancarias, prontuarios medicos
CONFIDENTIAL3Informacoes sensiveis de negocio ou pessoaisDados de CRM, financas, registros de RH, contratos, registros fiscais
INTERNAL2Nao destinadas a compartilhamento externoWikis internas, documentos de equipe, notas pessoais, contatos
PUBLIC1 (mais baixo)Seguras para qualquer pessoa verMateriais de marketing, documentacao publica, conteudo web geral

A regra de no write-down

O invariante de seguranca mais importante do Triggerfish:

Os dados so podem fluir para canais ou destinatarios com classificacao

igual ou superior. Esta e uma regra fixa -- nao pode ser configurada, anulada ou desabilitada. O LLM nao pode influenciar esta decisao. :::

Hierarquia de classificacao: PUBLIC -> INTERNAL -> CONFIDENTIAL -> RESTRICTED. Os dados fluem apenas para cima.

Isso significa:

  • Uma resposta contendo dados CONFIDENTIAL nao pode ser enviada para um canal PUBLIC
  • Uma sessao com taint RESTRICTED nao pode enviar saida para nenhum canal abaixo de RESTRICTED
  • Nao ha anulacao de administrador, nem escotilha de escape empresarial, nem solucao alternativa do LLM

Classificacao efetiva

Os canais e os destinatarios possuem niveis de classificacao. Quando os dados estao prestes a sair do sistema, a classificacao efetiva do destino determina o que pode ser enviado:

EFFECTIVE_CLASSIFICATION = min(channel_classification, recipient_classification)

A classificacao efetiva e a menor das duas. Isso significa que um canal de alta classificacao com um destinatario de baixa classificacao e tratado como de baixa classificacao.

CanalDestinatarioEfetivaPode receber dados CONFIDENTIAL?
INTERNALINTERNALINTERNALNao (CONFIDENTIAL > INTERNAL)
INTERNALEXTERNALPUBLICNao
CONFIDENTIALINTERNALINTERNALNao (CONFIDENTIAL > INTERNAL)
CONFIDENTIALEXTERNALPUBLICNao
RESTRICTEDINTERNALINTERNALNao (CONFIDENTIAL > INTERNAL)

Regras de classificacao de canais

Cada tipo de canal tem regras especificas para determinar seu nivel de classificacao.

E-mail

  • Correspondencia de dominio: Mensagens de @empresa.com sao classificadas como INTERNAL
  • O administrador configura quais dominios sao internos
  • Dominios desconhecidos ou externos sao classificados como EXTERNAL por padrao
  • Destinatarios externos reduzem a classificacao efetiva para PUBLIC

Slack / Teams

  • Membros do workspace: Membros do mesmo workspace/tenant sao INTERNAL
  • Usuarios externos do Slack Connect sao classificados como EXTERNAL
  • Usuarios convidados sao classificados como EXTERNAL
  • A classificacao e derivada da API da plataforma, nao da interpretacao do LLM

WhatsApp / Telegram / iMessage

  • Empresarial: Numeros de telefone comparados com a sincronizacao do diretorio de RH determinam interno vs. externo
  • Pessoal: Todos os destinatarios sao classificados como EXTERNAL por padrao
  • Os usuarios podem marcar contatos de confianca, mas isso nao muda o calculo de classificacao -- muda a classificacao do destinatario

WebChat

  • Os visitantes do WebChat sao sempre classificados como PUBLIC (visitantes nunca sao verificados como proprietario)
  • O WebChat e projetado para interacoes voltadas ao publico

CLI

  • O canal CLI roda localmente e e classificado com base no usuario autenticado
  • O acesso direto pelo terminal e tipicamente INTERNAL ou superior

Fontes de classificacao de destinatarios

Empresarial

  • A sincronizacao de diretorio (Okta, Azure AD, Google Workspace) preenche automaticamente as classificacoes de destinatarios
  • Todos os membros do diretorio sao classificados como INTERNAL
  • Convidados externos e fornecedores sao classificados como EXTERNAL
  • Os administradores podem alterar por contato ou por dominio

Pessoal

  • Padrao: Todos os destinatarios sao EXTERNAL
  • Os usuarios reclassificam contatos de confianca por meio de prompts no fluxo ou pelo app complementar
  • A reclassificacao e explicita e registrada

Estados dos canais

Cada canal passa por uma maquina de estados antes de poder transportar dados:

Maquina de estados de canais: UNTRUSTED -> CLASSIFIED ou BLOCKED
EstadoPode receber dados?Pode enviar dados ao contexto do agente?Descricao
UNTRUSTEDNaoNaoPadrao para canais novos/desconhecidos. Completamente isolado.
CLASSIFIEDSim (dentro da politica)Sim (com classificacao)Revisado e atribuido um nivel de classificacao.
BLOCKEDNaoNaoExplicitamente proibido pelo administrador ou usuario.

SEGURANCA Os canais novos sempre iniciam no estado UNTRUSTED. Eles

nao podem receber nenhum dado do agente e nao podem enviar dados ao contexto do agente. O canal permanece completamente isolado ate que um administrador (empresarial) ou o usuario (pessoal) o classifique explicitamente. :::

Como a classificacao interage com outros sistemas

A classificacao nao e um recurso isolado -- ela direciona decisoes em toda a plataforma:

SistemaComo a classificacao e usada
Taint de sessaoAcessar dados classificados escala a sessao para esse nivel
Hooks de politicasPRE_OUTPUT compara o taint de sessao com a classificacao do destino
MCP GatewayAs respostas do servidor MCP carregam classificacao que contamina a sessao
Linhagem de dadosCada registro de linhagem inclui o nivel de classificacao e o motivo
NotificacoesO conteudo das notificacoes esta sujeito as mesmas regras de classificacao
Delegacao de agentesO teto de classificacao do agente chamado deve atender ao taint do chamador
Sandbox de pluginsO SDK de plugins auto-classifica todos os dados emitidos