Nexus Docs

Middleware/authMiddleware.ts

Middleware/authMiddleware.ts

Selecione outros documentos nas abas ou no menu lateral.

Middleware/authMiddleware

Versão: 1.0
 Última atualização: 29 de agosto de 2025
 Responsável: Ariel Spencer & Fabrício Bahiense

📋 Descrição

O que faz?

Faz a autenticação de usuários administradores e outros gerais, caso as credenciais/token sejam válidos, permite dar continuidade na função.

Por que existe?

Serve para garantir que pessoas não autorizadas não tenham acesso ao sistema e manter um nível hierárquico adequado.

Como funciona?

Pega o token que fica no header, checa o seu id e sua role para verificar seu nível hierárquico, caso seja válido segue para a próxima função.


🔧 Documentação Técnica

Arquitetura

[Diagrama simples ou descrição da arquitetura]

Frontend (Nuxt)  Backend (Node)  Database (MongoDB)

Tecnologias Utilizadas

  • Banco: Mongoose
  • Outros: JSON Web Token

Estrutura de Pastas

backend/                                        # Projeto

└── src/                                  # Source

        └── middleware/

                └── authMiddleware.ts

Configuração

Variáveis de Ambiente

# Essenciais

NODE_ENV=development

PORT=3000

DATABASE_URL=mongodb://...

# Específicas do módulo

[VARIAVEL_1]=[valor]

[VARIAVEL_2]=[valor]

Como rodar

# Instalar dependências

npm install

# Desenvolvimento

npm run dev

# Produção

npm run build

npm start

Endpoints/Rotas Principais

Frontend (Nuxt)

  • / - Página inicial
  • /[rota] - [Descrição]

Backend (API)

  • GET /api/[recurso] - [Descrição]
  • POST /api/[recurso] - [Descrição]
  • PUT /api/[recurso]/:id - [Descrição]
  • DELETE /api/[recurso]/:id - [Descrição]

Banco de Dados

Collections/Tabelas

// [nome_da_collection]

{

  _id: ObjectId,

  campo1: String,

  campo2: Number,

  created_at: Date,

  updated_at: Date

}


📦 Dependências

Dependências Principais

Pacote

Versão

Finalidade

mongoose

^5.11.97

Banco de dados

jsonwebtoken

^9.0.6

Decodificação do token


Última revisão: 29 de agosto de 2025 por Ariel Spencer