Skip to content

Auth

PT | EN

A camada de autenticação do Vectora garante que apenas usuários e serviços autorizados acessem recursos, namespaces e operações sensíveis. Esta seção documenta os mecanismos de identidade, gestão de chaves de API e controle de acesso que protegem sua infraestrutura de contexto.

Autenticação e Autorização no Vectora

Segurança na aplicação, não no banco: O Vectora implementa RBAC, validação de namespace e sanitização na camada de aplicação (Guardian, RBAC Logic). O backend (MongoDB Atlas) armazena dados; a aplicação decide quem pode acessar o quê.

Tópicos desta seção

PáginaDescrição
SSO / Identidade UnificadaAutenticação centralizada, gestão de sessões e integração com provedores externos (GitHub, Google, SAML)
API KeysCriação, rotação e escopos de chaves de API para integração programática com o Vectora

Fluxo de Autenticação Típico

    graph LR
    A[Usuário / Serviço] --> B{Tipo de Acesso}
    B -->|Humano| C[Login via SSO]
    B -->|Máquina| D[API Key com escopo]

    C --> E[JWT com claims: userId, roles, namespaces]
    D --> F[Validação de chave + rate limiting]

    E --> G[Middleware RBAC]
    F --> G

    G --> H{Permissão concedida?}
    H -->|Sim| I[Executa operação]
    H -->|Não| J[Retorna 403 Forbidden]
  

Conceitos Fundamentais

TermoDefinição
NamespaceIsolamento lógico de dados e operações; cada projeto/time tem seu namespace
RBACRole-Based Access Control: roles como reader, contributor, admin definem permissões
API KeyToken de acesso para integração programática, com escopos granulares (read, write, search)
JWTJSON Web Token assinado que carrega claims de identidade e permissões
Trust FolderEscopo de filesystem permitido para operações; validado antes de qualquer tool call

Boas Práticas de Segurança

Use API Keys com escopo mínimo: Conceda apenas read se a integração não precisa escrever Rotação periódica de chaves: Renove API Keys a cada 90 dias ou após incidentes Valide namespaces em cada chamada: Não confie apenas no token; revalide escopo no runtime Monitore logs de auditoria: Use audit_logs para detectar acessos anômalos Nunca exponha chaves no client: API Keys pertencem ao backend ou ao agent principal, nunca ao browser

Blocklist hard-coded: Arquivos como .env, .key, .pem são bloqueados pelo Guardian antes de qualquer processamento — independente de autenticação. Segurança por código, não por configuração.

Integração com Seu Sistema

Exemplo: Validação de JWT no seu backend

// Exemplo: middleware de validação de JWT
import { verifyJWT } from "@vectora/auth";

export async function authMiddleware(req: Request, next: Handler) {
  const token = req.headers.get("Authorization")?.replace("Bearer ", "");
  if (!token) return next({ status: 401, error: "Missing token" });

  try {
    const claims = await verifyJWT(token, { audience: "vectora-api" });
    req.context = {
      userId: claims.sub,
      roles: claims.roles,
      namespaces: claims.namespaces,
    };
    return next();
  } catch {
    return next({ status: 403, error: "Invalid token" });
  }
}

Exemplo: Uso de API Key em chamada MCP

{
  "mcpServers": {
    "vectora": {
      "command": "npx",
      "args": ["vectora-agent", "mcp-serve"],
      "env": {
        "VECTORA_API_KEY": "vca_live_...",
        "VECTORA_NAMESPACE": "my-project"
      }
    }
  }
}

Perguntas Frequentes

P: Preciso de SSO para usar o Vectora? R: Não. O plano Free usa autenticação local via vectora auth login. SSO é disponível nos planos Pro/Team para integração com provedores corporativos.

P: Posso usar minha própria infraestrutura de auth? R: Sim. O Vectora aceita qualquer JWT válido configurado via auth.jwt.publicKey. Consulte SSO para detalhes de integração customizada.

P: Como revogo uma API Key comprometida? R: Via dashboard (/settings/api-keys) ou CLI: vectora api-key revoke --id <key_id>. A revogação é imediata em todos os nós.

P: O Vectora armazena minhas credenciais? R: Não. Chaves de API são armazenadas como hash (bcrypt). Tokens JWT são validados, não persistidos. Credenciais de providers (Gemini, Voyage) são fornecidas via BYOK e nunca tocadas pela Kaffyn.


External Linking

ConceptResourceLink
MongoDB AtlasAtlas Vector Search Documentationwww.mongodb.com/docs/atlas/atlas-vector-search/
JWTRFC 7519: JSON Web Token Standarddatatracker.ietf.org/doc/html/rfc7519
MCPModel Context Protocol Specificationmodelcontextprotocol.io/specification
MCP Go SDKGo SDK for MCP (mark3labs)github.com/mark3labs/mcp-go
RBACNIST Role-Based Access Control Standardcsrc.nist.gov/projects/rbac
WebAuthnWeb Authentication: Public Key Credentialswww.w3.org/TR/webauthn-2/

Frase para guardar: “Autenticação verifica quem você é. Autorização define o que você pode fazer. Vectora aplica ambas em cada tool call — não apenas no login.”


Parte do ecossistema Vectora · Open Source (MIT) · Contribuidores