Skip to content

7. Conceitos de Segurança

O modelo de segurança do CRP.AI combina isolamento de rede, autenticação centralizada e autorização baseada em papéis. Ele separa credenciais de provedores, virtual keys de colaboradores e operações administrativas.

7.1 Autenticação

A autenticação de usuários no Olimpo é delegada ao Keycloak, o SSO corporativo da CRP Tecnologia. O Olimpo não armazena credenciais de usuários; a identidade é federada e validada por tokens JWT nas operações administrativas.

O Keycloak suporta fluxos diferentes conforme o contexto de uso: Authorization Code para acesso web ao Olimpo Frontend e Device Authorization para o CRP.AI Installer via terminal. Após o provisionamento, ferramentas locais usam virtual keys para autenticar chamadas diretamente no AI Gateway.

7.2 Autorização

A autorização é gerenciada pelo RBAC do Olimpo, não pelo Keycloak. Após a autenticação, o Olimpo API verifica as permissões do usuário com base em seu papel e no contexto do time, determinando quais operações estão disponíveis.

7.2.1 Papéis e Permissões

O CRP.AI define dois perfis principais de acesso:

  • Administrador: gerencia times, configura modelos permitidos, define orçamentos e controla o acesso a IA por time e por membro
  • Colaborador: gerencia sua própria chave de API, visualiza consumo e orçamento, regenera credenciais

7.2.2 Controle de Acesso por Time

Cada time é uma unidade de governança de IA. A visibilidade de modelos, chaves e dados de consumo é definida pelas permissões do Olimpo e pelas regras aplicadas ao time.

As políticas de acesso são definidas por time: modelos permitidos, orçamento máximo e membros autorizados. O módulo CRP.AI no Olimpo solicita essas configurações à API administrativa do AI Gateway, que mantém o estado técnico e aplica os controles em runtime.

7.3 Segurança do AI Gateway

7.3.1 Virtual keys

Cada colaborador recebe uma virtual key individual, gerada pelo AI Gateway com escopo limitado: limite de consumo, período de validade, modelos permitidos e limites de taxa de uso. O módulo CRP.AI no Olimpo autoriza e solicita o ciclo de vida da chave, mantém metadados e registra auditoria; o valor da chave é provisionado na configuração local necessária para o consumo de modelos.

O Installer grava a virtual key na configuração local do OpenCode. Quando a integração Azure DevOps é confirmada, ele também pode gravar um PAT em arquivo de ambiente local. Esses dois segredos têm finalidades distintas e não devem ser incluídos em repositórios, documentos de fluxo, tickets ou mensagens. O uso de configuração local deve ser evitado em diretórios versionados; quando necessário, os arquivos devem estar ignorados pelo Git.

Este modelo permite rastreabilidade individual (cada chamada é vinculada ao colaborador), revogação independente (bloquear uma chave não afeta os demais) e regeneração com preservação do histórico de consumo.

7.3.2 Isolamento de Rede

O AI Gateway opera exclusivamente em rede interna, sem exposição à internet pública. Colaboradores na rede corporativa acessam-no diretamente para consumo de IA via virtual key. O Olimpo API acessa sua API administrativa por uma credencial de serviço do Olimpo.

7.3.3 Proteção de Credenciais de Provedores

As credenciais dos provedores de IA residem no AI Gateway e não são expostas pelo fluxo previsto do CRP.AI a outros componentes. O módulo CRP.AI no Olimpo não administra essas credenciais; colaboradores e administradores usam as interfaces de acesso e governança, respectivamente.

7.4 Rastreabilidade

7.4.1 Registro de Consumo

O AI Gateway registra os dados operacionais disponíveis para cada chamada de modelo. O Olimpo apresenta o contexto administrativo de consumo e audita alterações de acesso. A disponibilidade de identificadores, custos e métricas depende da configuração do gateway e do provedor.

7.4.2 Auditoria de Ações Administrativas

O Olimpo mantém registros de auditoria para ações como criação de times, alteração de configurações, solicitação de geração ou revogação de chaves e modificação de permissões. Cada registro inclui o autor da ação, valores anteriores e novos, e timestamp.

7.4.3 Tracing de Chamadas

Quando a integração de tracing estiver habilitada, o AI Gateway poderá enviar dados de observabilidade conforme a política de retenção aprovada. A topologia, o conteúdo coletado e os controles de acesso devem ser confirmados antes de classificá-la como fonte de auditoria.

7.5 Isolamento de Dados

Os bancos de dados do AI Gateway e do Olimpo são instâncias independentes. A integração entre os componentes ocorre por API. O banco do Olimpo mantém metadados de chaves; o banco do AI Gateway mantém os dados operacionais necessários ao gateway.