Saltar para o conteúdo

Guias

Ligar uma fonte

Ligue uma fonte de observação ao Olivares AI, entenda o modelo de conector leitura-primeiro e configure pgaudit e s3cloudtrail com os tipos corretos.

Atualizado:

Uma fonte observa um sistema externo e emite observações normalizadas — nunca se coloca no caminho de dados, faz proxy de trafego ou le payloads. Esta página cobre o modelo de conector e como ligar uma fonte real através de OLIVARES_SOURCES_CONFIG. Se só quer ligar um agente de programação, comece com Ligar Claude Code; essa e uma fonte no caminho cooperativo, e este e o modelo subjacente.

O que uma fonte faz

Uma fonte observa um sistema e reporta o que viu como observações tipadas. O mapa de acesso leitura/escrita e construído a partir do que a fonte reporta, não da interceção do que flui. O motor gere o agendamento: uma fonte de streaming (um tail de registo) bloqueia até ser cancelado; uma fonte batch faz o seu trabalho e retorna, e o motor decide quando a executar novamente.

Uma observação transporta apenas identificadores e uma classificação leitura/escrita — nunca corpos SQL, payloads de pedido, segredos ou PII. Isso é uma propriedade do vocabulário de comunicação que o conector fala, não uma definição que pode alternar. Veja Permitido vs observado para como estas observações aterram no mapa.

Cada aresta regista qual fonte a produziu e um nível de confiança, e o produto mostra ambos. A atribuição e firm quando o acesso esta vinculado a uma identidade por agente e approximate quando e inferido ou parcial (uma conta de serviço partilhada, uma conexão agrupada). O modo de acesso e um de unknown, read, write ou readwriteunknown e explicito e nunca adivinhado. Veja Fidelidade.

Onde funciona

Os coletores que executam estas fontes funcionam sempre na sua infraestrutura. O plano de controlo que os ingere pode ser um único binário auto-hospedado, uma implantação distribuída, ou air-gapped — os dados do ambiente observado nunca saem do seu limite. Veja Auto-hospedagem e a vista geral de arquitetura.

O ficheiro de configuração

Fontes reais (não demonstração) são ligadas a partir de um único ficheiro de configuração do operador nomeado pela variavel de ambiente OLIVARES_SOURCES_CONFIG, lido antes do motor arrancar. E um documento JSON que declara uma lista de sources. Cada entrada seleciona um conector por kind, nomeia o tenant a que as suas observações pertencem, da a fonte um name, e transporta a config própria do conector. Um poll_seconds opcional re-executa uma fonte batch num intervalo; uma fonte de streaming ignora-o.

Os tipos de fonte são nomes registados no motor. Os dois observadores de ficheiro de nível clean são pgaudit (PostgreSQL) e s3cloudtrail (AWS S3). Use essas strings exatas — documentação anterior que escreveu pg_audit ou cloudtrail estava errada e essas strings não resolvem.

Uma fonte pgaudit real

A fonte pgAudit faz tail do registo de auditoria estruturado do PostgreSQL e emite uma aresta por acesso a dados auditado. O modo leitura/escrita e retirado verbatim da classe do pgAudit (READ, WRITE, DDL) — nunca inferido do texto SQL. E apenas leitura sobre o ficheiro de registo e nunca conecta a base de dados.

{
  "sources": [
    {
      "name": "prod-postgres",
      "kind": "pgaudit",
      "tenant": "acme",
      "config": {
        "log_path": "/var/log/postgresql/postgresql.json",
        "format": "jsonlog",
        "follow": "true",
        "shared_accounts": "app_pool,reporting"
      }
    }
  ]
}

Os valores de config são strings. As chaves acima pertencem ao conector pgAudit:

  • log_path (obrigatório) — caminho para o ficheiro de registo PostgreSQL a ler.
  • formatcsvlog ou jsonlog; predefinido csvlog.
  • follow — tail continuo. Aplica-se apenas a jsonlog; um ficheiro csvlog e lido como batch porque os seus registos podem abranger novas linhas.
  • shared_accounts — papeis ou application_names separados por virgulas que são agrupados ou partilhados. O acesso atribuído a um destes e marcado approximate, deliberadamente, porque a trilha não pode separar os chamadores reais atrás de uma identidade partilhada.

Um application_name distinto e a ponte por agente que ganha uma aresta firm. Se muitos agentes partilham um papel ou pool de conexões, cada acesso colapsa nessa identidade e a atribuição torna-se approximate — o produto di-lo em vez de fingir que consegue distinguir os agentes.

Uma fonte s3cloudtrail real

A fonte CloudTrail le ficheiros de registo AWS CloudTrail e emite uma aresta por evento S3, retirando leitura/escrita verbatim do campo readOnly do CloudTrail. A origem e o principal IAM; um papel assumido partilhado entre chamadores e marcado approximate.

{
  "sources": [
    {
      "name": "prod-s3",
      "kind": "s3cloudtrail",
      "tenant": "acme",
      "config": {
        "path": "/var/log/cloudtrail/",
        "shared_accounts": "shared-pipeline-role"
      }
    }
  ]
}

A chave path (obrigatória) e um ficheiro de registo CloudTrail ou um diretório de ficheiros *.json / *.json.gz. shared_accounts comporta-se como no pgAudit.

Quando nada esta ligado, o motor avisa

O motor falha seguro, não ruidosamente:

  • Se OLIVARES_SOURCES_CONFIG não esta definido, o motor arranca sem fontes.
  • Se o ficheiro esta em falta, ilegível ou não é JSON válido, o motor avisa e continua sem fontes — não crasha no arranque.
  • Se a lista de fontes esta vazia, avisa que nenhum conector vai ingerir e que o ambiente esta a funcionar sem trafego real.

Em todos os casos o registo de arranque diz-lhe claramente que nada real esta ligado. Um mapa de acesso vazio nunca deve parecer um limpo.

Nem todos os conectores in-tree estão ligados ao serve stock

O Olivares AI distribui mais conectores in-tree do que um binário serve stock regista como tipos de fonte selecionaveis. Os observadores de ficheiro pgaudit, s3cloudtrail, o backstop de kernel ebpf, o leitor runtime de host e a introspeção mcp estão ligados ao serve stock, juntamente com um conjunto de observadores de plataforma de dados, segredos, rede e identidade. Outros conectores existem na árvore mas ainda não estão ligados ao registo de fontes do serve stock — isso é um seguimento rastreado, não uma afirmacao de que tudo e selecionável hoje. Se um kind que espera não resolve, trate-o como ainda não ligado em vez de mal configurado, e confirme contra o descritor do próprio conector antes de confiar nele.

Esta página descreve apenas chaves que são verificadas contra os conectores acima. As chaves config exatas para qualquer outro conector pertencem a esse conector; leia o seu descritor em vez de copiar um schema não verificado.

Relacionado

Pesquisar documentação