Saltar para o conteúdo

Conceitos-chave

Governança: leitura primeiro e deny-closed

Como o Olivares AI observa antes de aplicar, governa a atuação em deny-closed por defeito.

Atualizado:

A governança no Olivares AI assenta em dois princípios que cabem na cabeca de qualquer pessoa: observar antes de aplicar, e quando aplicar, negar por defeito. O produto mapeia e audita o que cada agente pode alcançar muito antes de bloquear uma única ação, e os bloqueios que executa são deny-closed.

Leitura primeiro: observação antes da aplicação

A postura predefinida da plataforma e detetiva, não preventiva. Constroi o mapa de acesso leitura/escrita ingerindo registos, OpenTelemetry e auditoria nativa fora de banda — nunca esta no caminho de dados do agente, portanto um coletor que falha não pode derrubar a produção. A partir desse mapa compara permitido contra observado e apresenta desvios para um humano julgar.

Isto importa para como le o resto desta página. O produto observa e governa amplamente; não atua amplamente. Onde pode executar uma ação na sua infraestrutura, essa capacidade e uma de três coisas, e o catalogo de módulos marca qual:

  • live — ligado e ativo hoje (um conjunto restrito);
  • on-demand — o backend esta construído e ligado a um ponto de injeção mas permanece deny-closed ou degradado até que o provisione (um executor, um despachante, uma credencial de inferência);
  • seam — uma interface declarada, deny-closed, sem backend no binário predefinido.

Portanto, uma ausência de aplicação e geralmente por design, não uma falha. Leitura primeiro significa que o padrão honesto e observar e registar, e bloquear apenas as superficies que ativou explicitamente.

O modelo de autorização dentro do qual governa

Cada decisão governada passa pelo mesmo núcleo de autorização que protege o resto da API. Três propriedades merecem ser interiorizadas antes de mudar algo.

RBAC e deny-by-default. Um principal sem membros num inquilino e negado — não existe concessão implicita. As permissões tem escopo de inquilino, e um handler atua apenas no único inquilino para o qual o pedido foi resolvido, o que fecha classes de confused-deputy e IDOR por construção. Os papeis formam uma escada: viewer le, editor escreve, admin gere IAM do inquilino, owner detém tudo. Ler o grafo de acesso e deliberadamente um privilégio de editor ou superior — um mapa completo do que cada agente pode tocar e um roteiro de reconhecimento — e cada tal leitura e escrita no registo de auditoria.

A camada de políticas só restringe. Sobre RBAC pode ligar um ponto de decisão de políticas baseado em atributos. A composição e uma intersecao — RBAC ∩ ABAC nativo ∩ PDP externo — portanto uma política só pode restringir ainda mais o que RBAC já permitiu; nunca pode ampliar uma concessão. Isto é aplicado, não uma convencao. Escolhe no máximo um motor externo:

# Cedar embebido (Go puro, sem sidecar) ou OPA via HTTP. Predefinicao: none.
OLIVARES_PDP_ENGINE=cedar   # ou: opa | none

Com Cedar escreve regras forbid; um conjunto de regras vazio deixa a decisão RBAC intacta. Com OPA o seu Rego deve ser permit-by-default, onde um resultado em falta ou qualquer erro de transporte falha fechado. Uma configuração PDP invalida desativa apenas o PDP externo e regista o facto — ABAC nativo e RBAC continuam a governar, e um motor mal configurado nunca deixa um pedido sem governança. Cada restrição que o PDP aplica e auditada.

Níveis de risco e o piso de duplo controlo

As ações que chegam a fila de aprovação são classificadas em quatro níveis de risco — low, medium, high, critical — seguindo a taxonomia de agentes AI da OWASP. (Este e um eixo separado dos níveis de conformidade do EU AI Act; não confundir os dois.) O nível e re-derivado da política em vigor a cada decisão de segurança, nunca lido de um snapshot armazenado, portanto uma mudança de política tem efeito imediato e uma linha obsoleta nunca pode manter a fasquia abaixo da classificação atual.

Uma ação critical transporta um piso obrigatório de duas pessoas: pelo menos dois aprovadores humanos distintos, retirado de NIST SP 800-53 AC-3(2) autorização dupla. O piso e aplicado duas vezes — na criacao (o limiar armazenado nunca pode começar abaixo dele) e re-derivado na decisão (uma linha rebaixada ou legada ainda não pode passar com um aprovador) — portanto mesmo uma política de operador que explicitamente baixe o nível não pode tornar uma ação crítica unilateral. O conjunto crítico incorporado e a familia irreversivel e moldadora do ambiente: implantação e retirada em produção, eliminação de dados, alterações de aplicação de segurança, custódia e rotação de chaves, e reativação do ambiente após um kill switch.

Níveis inferiores não alteram a mecanica do motor — uma aprovação que já existe exige pelo menos um humano — são o vocabulário em que outros controlos se baseiam (por exemplo, elevar a autenticação numa ação crítica).

O portão de aprovação human-in-the-loop

Onde o produto bloqueia uma ação, o ciclo e: uma superficie apresenta (desvio do mapa de acesso, um achado do módulo de segurança) → um operador autorizado decidea decisão e registada no registo de auditoria. O motor de aprovação que suporta isto é real hoje: um pedido abre deny-closed, vinculado a um hash de plano, e com limite temporal. Os invariantes são aplicados do lado do servidor, baseados na identidade estavel do utilizador (um token de sistema não tem identidade e não pode decidir):

  • Separação de deveres — o requerente nunca pode decidir o seu próprio pedido.
  • Guarda de decisor duplicado — um humano conta uma vez para um limiar.
  • Expiracao — derivada na leitura, portanto um pedido expirado nunca pode vincular mesmo antes de uma varredura materializar a sua expiracao.

O que ainda esta a amadurecer e a consola de revisão de operador mais rica; os endpoints e o motor já estão implementados. O guia Governar e aprovar percorre o fluxo ao vivo.

A dependência que torna qualquer disto credivel e a identidade por agente. A auditoria atribui atividade a uma credencial, não inerentemente a um agente; uma conta de serviço partilhada colapsa a atribuição ao nível de identidade — apresentada honestamente como um achado, nunca silenciosamente recuperada. Veja permitido vs observado e fidelidade para o que isso faz ao sinal sobre o qual governa.

Break-glass: a válvula de escape auditada

O controlo de duas pessoas precisa de uma válvula de escape para o incidente das 03:00 onde um aprovador esta inalcançável. O break-glass e essa válvula, e e ruidoso por construção. A ativação e de nível admin e exige um humano real (um token de sistema e recusado), uma verificação de hardware (AAL3), uma justificacao escrita e uma sessão ativamente gravada como pre-condicao. A concessão tem limite temporal — predefinido de uma hora, máximo de um dia — e uma concessão expirada não pode autorizar nada.

Enquanto uma concessão esta ativa, uma ação dentro do escopo pode prosseguir sem o seu quorum de aprovação, mas cada utilizacao e adicionada a uma trilha imutável e ao registo de auditoria, nomeando a concessão, a ação e o sujeito — uma ação que prosseguiu sob break-glass e permanentemente distinguivel de uma aprovada. Uma revisão pos-facto obrigatória fecha o ciclo: uma nova concessão não pode ser ativada enquanto uma anterior esteja por rever, e a revisão deve vir de um humano diferente do ativador.

O kill switch: o portão de negação de todo o ambiente

O kill switch e a paragem de emergência com um clique, e inverte a ergonomia habitual de propósito. Ativar e deliberadamente barato — nível admin, uma razao obrigatória, sem quorum de aprovação, sem elevação, sem break-glass — porque uma paragem que espera por consenso não é uma paragem. O nível de garantia da sessão que ativa e registado para perícia; abuso da ativação custa apenas disponibilidade, que é a direcao segura.

A linha de paragem e a única fonte de verdade. Cada portão de atuação governado consulta-a ao vivo em cada ação e falha fechado num erro de leitura — o inverso exato do contrato fail-open dos portões de orçamento, porque um estado de paragem ilegível nunca deve significar “avança”. Ativar também revoga o trabalho em fila que os portões não podem alcançar: cada aprovação de atuação pendente dentro do escopo e cancelada na mesma transacao, portanto uma intencao pre-paragem não pode amadurecer numa concessão que despacha no momento em que o ambiente volta. As ações de governança propriamente ditas estão isentas — a paragem interrompe o ambiente agentivo, nunca os controlos que o governam.

Reativar nunca e unilateral. Esta bloqueado por uma aprovação de duplo controlo fresca (o piso critical de dois humanos distintos, re-verificado estruturalmente na mudança para que uma política rebaixada não possa torna-lo unilateral), e deliberadamente não há caminho de break-glass para reativar: “o ambiente permanece parado” e o estado seguro. Uma revisão pos-facto obrigatória por um humano não envolvido fecha o incidente.

A garantia de decisões registadas

Seja qual for a profundidade do fluxo de trabalho acima, uma decisão de governança e um facto registado. Ações mutaveis são adicionadas ao registo de auditoria com o ator real na mesma transacao que a mudança, e leituras sensiveis (o grafo de acesso, o próprio registo) auto-auditam numa escrita confirmada. O registo e apenas adicao e encadeado por hash, cada registo transportando os campos de integridade de cadeia, portanto reescrever a historia e detetável e nunca contém PII. Não pode fazer uma mudança sem governança que o registo silenciosamente esqueca.

Relacionado

Pesquisar documentação