Voltar para o início
Full Stack & Segurança Corporativa

RentalCar - Locação Enterprise

Plataforma corporativa de locação de veículos desenhada com arquitetura de alta segurança, cobrindo autenticação multifator (2FA), auditoria de acessos e painel analítico administrativo.

Next.js 15TypeScriptNhostGraphQLShadcn/uiPostgreSQL

Destaques de Engenharia

Autenticação de dois fatores (2FA / TOTP) compatível com autenticadores padrão
Proteção contra força bruta com Rate Limiting granular em rotas sensíveis
Sistema de auditoria (Audit Logs) rastreando IP, User-Agent e timestamps
Painel administrativo executivo com dashboards em tempo real
Gerenciamento e revogação remota de sessões ativas

Fluxo de Arquitetura

[Next.js App Router] ──► [Auth Middleware (Rate Limit)]
                                │
                                ▼
                       [Hasura GraphQL Engine]
                                │
                                ├──► [JWT Validation & 2FA State]
                                │
                                ▼
                       [PostgreSQL 15 Cluster]
                                └──► [Audit Logs Table (Triggers)]

• Framework: Next.js 15 com TypeScript e Tailwind CSS

• Dados & BaaS: Hasura GraphQL conectado ao PostgreSQL 15 via Nhost

• Criptografia: bcryptjs com salt rounds configurados e TOTP baseado em chaves temporais

Implementação em Código

Middleware de Verificação de 2FA e Sessãotypescript
export async function verifyUserSession(session: UserSession) {
  if (!session.isValid) throw new Error("Sessão expirada");
  if (session.requires2FA && !session.is2FAVerified) {
    return { status: "REQUIRES_MFA", redirect: "/auth/verify-mfa" };
  }
  return { status: "AUTHORIZED", user: session.user };
}

Desafios Técnicos Resolvidos

Desafio:

Mitigar ataques automatizados de força bruta em endpoints de login.

Resolução Implementada:

Middleware com limitação de requisições persistido em banco para bloquear origens abusivas.

Desafio:

Sincronização de estados em dashboards com alta frequência de atualizações.

Resolução Implementada:

Implementação de queries GraphQL otimizadas associadas a Server Components do Next.js.

Tem interesse em detalhes da arquitetura ou código deste projeto?

Conversar no WhatsApp